import pandas as pd %pylab
一.使用numpy創建
df = pd.DataFrame(np.arange(16).reshape((4,4)), index=list('abcd'), columns=['one','two','three','four']) df

二.由Series組成的字典
df3 = pd.DataFrame({'one':pd.Series([0,1,2,3]),
'two':pd.Series([4,5,6,7]),
'three':pd.Series([8,9,10,11]),
'four':pd.Series([12,13,14,15])},
columns=['one','two','three','four'])
df3

自定義行索引;
df4 = pd.DataFrame({'one':pd.Series([0,1,2,3],index=list('abcd')),
'two':pd.Series([4,5,6,7],index=list('abcd')),
'three':pd.Series([8,9,10,11],index=list('abcd')),
'four':pd.Series([12,13,14,15],index=list('abcd'))},
columns=['one','two','three','four'])
df4

總結:
由Series組成的字典,創建Dataframe, columns為字典key, index為Series的標簽(如果
Series沒有指定標簽,則默認數字標簽)
三.由字典或者series組成的列表
data = [{"one":1,"two":2},
{"one":5,"two":10,
"three":15}]
df6 = pd.DataFrame(data)
df6

輸出為:
指定行索引,列名:
df7 = pd.DataFrame(data, index = ["a", "b"]) df7

df4 = pd.DataFrame(data, columns = ["one", "two", "three"],index=['a','b'])
總結:
由字典組成的列表創建Dataframe, columns為字典的key, index不做指定默認為數字標簽,
pandas會自動為行,列索引排序;但是如果在pd.dataframe()的參數中指定了index和columns的值,行和列的索引就會按照指定的值排列
四.由字典組成的字典
data = { "Jack":{"math":90, "english":89, "art":78}, "Marry":{"math":82, "english":95, "art":96}, "Tom":{"math":85, "english":94} } df1 = pd.DataFrame(data) df1

總結:
字典的健值作為dataframe的columns
如果沒有指定index參數的值,行索引使用默認的數字索引
每個序列的長度必須相同
同樣的,pandas會對會對列索引排序,如果顯示的傳入columns參數,將按照傳入的值得順序顯示
