Dataframe:
dataframe:二维的表格型数据结构,是组合的series。dataframe 的每一行和每一列都是一个series。
语法结构:
DataFrame(data=None, index=None, columns=None, dtype=None, copy=False)
data:数组(多维),可迭代对象,字典嵌套或dataframe
index:索引名称,如不传入,则默认[0,1,2…n],传入个数与data的行数相等
columns:列名称,如不传入,则默认[0,1,2…n],传入个数与data的列数相等
DataFrame的生成:
#字典嵌套字典生成dataframe:
import pandas as pd
from pandas import DataFrame
data={"big":{"a":"1","b":"9"},"small":{"a":"4","b":"8"},"middle":{"a":"3","b":"6"}}
frame=pd.DataFrame(data)
print(frame)
#输出:
big small middle
a 1 4 3
b 9 8 6
########################################
#传入ndarray生成dataframe:
data=np.arange(12).reshape(3,4)
frame=DataFrame(data,index=['a','b','c'],columns=['m','n','j','k'])
print(frame)
#输出:
m n j k
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
##########################################
#注意:如果传入1维字典,会出现下面情况:
dic={"a":1,"b":2,"c":3}
DF=pd.DataFrame(dic,index=['m','n','k'])
print(DF)
#输出:
a b c
m 1 2 3
n 1 2 3
k 1 2 3
#可以尝试传入一维数组
Dataframe的主要方法:
- 通过自定义索引和列名顺序修改数据顺序:
import pandas as pd
from pandas import DataFrame
data={"big":{"a":"1","b":"9"},"small":{"a":"4","b":"8"},"middle":{"a":"3","b":"6"}}
origin_frame=pd.DataFrame(data)
new_frame=pd.DataFrame(data,index=['b','a'],columns=['middle','small','big'