pandas創建dataframe的方法

創建pandas的DataFrame對象的5種方法

Pandas的DataFrame對象可以通過許多方式創建,舉幾個常用的例子。

通過Series對象創建

#1、通過單個Series對象創建。DataFrame是一組Series對象的集合,可以用單個Series創建一個單列的DataFrame
import pandas as pd
import numpy as np
#先創建一個Series對象
area = pd.Series({'California': 423967, 'Texas': 695662,
                  'New York': 141297, 'Florida': 170312,
                  'Illinois': 149995})
#創建單列的DataFrame對象
pd.DataFrame(area,columns=['area'])

#輸出如下:
              area
California  423967
Texas       695662
New York    141297
Florida     170312
Illinois    149995
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
#2、通過多個Series對象的字典創建DataFrame對象
#另外創建一個Series對象
pop = pd.Series({'California': 38332521, 'Texas': 26448193,
                 'New York': 19651127, 'Florida': 19552860,
                 'Illinois': 12882135})
#使用字Series對象字典方式創建DataFrame對象
pd.DataFrame({'area':area, 'population':pop})

#輸出如下:
              area  population
California  423967    38332521
Texas       695662    26448193
New York    141297    19651127
Florida     170312    19552860
Illinois    149995    12882135
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

使用字典列表創建

#所有元素都是字典的列表可以變成DataFrame
#創建一個元素爲字典的列表
data = [{'a':i, 'b': 2*i} for i in range(10)]
#通過字典列表創建DataFrame
pd.DataFrame(data)

#輸出如下:
   a   b
0  0   0
1  1   2
2  2   4
3  3   6
4  4   8
5  5  10
6  6  12
7  7  14
8  8  16
9  9  18
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

通過Numpy二維數組創建

#假入有一個二維數組,就可以創建一個可以指定行列索引值的DataFrame
#創建一個numpy二維數組
np.random.seed(0)
a =np.random.randint(1,10,(3,2))
#基於a數組建立DataFrame
pd.DataFrame(a,columns=['foo', 'bar'],index=['a','b', 'c'])

#輸出如下:
   foo  bar
a    6    1
b    4    4
c    8    4

#假如不指定行列索引,那麼行列默認都是整數索引值
pd.DataFrame(a)

#輸出如下:
   0  1
0  6  1
1  4  4
2  8  4
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章