http://www.itongji.cn/detail?type=99991314
https://www.yiibai.com/pandas/python_pandas_data_structures.html
main: https://www.pypandas.cn/docs/getting_started/10min.html
查看数据
DataFrame.to_numpy() 会给出一个比较底层的NumPy对象。注意,当你的 DataFrame 有多个列并且每列的数据类型不同时,这个操作是不可行的,这也可以说是Pandas和NumPy之间的根本区别:NumPy的每一个array对象只有一种数据类型,但是Pandas的每一列的数据类型都是相同的(译者注:Pandas不需要像Numpy那样所有元素的类型都相同). 当你调用 DataFrame.to_numpy()时, Pandas会寻找可以涵盖DataFrame中所有元素类型的NumPy数据类型。 这可能最终成为对象,需要将每个值强制转换为Python对象。
通过轴排序:df.sort_index(axis=1, ascending=False)
按值排序:df.sort_values(by=‘B’)
选择一列,产生一个系列,获取df.A,df[‘A’],df[0:3](不包含3),df[‘20170102’:‘20170103’](包含两端)
按标签选择:df.loc[dates[0]],df.loc[:,[‘A’,‘B’]],df.loc[‘20170102’:‘20170104’,[‘A’,‘B’]],df.loc[dates[0],‘A’] = df.at[dates[0],‘A’]
通过位置选择:df.iloc[3],df.iloc[3:5,0:2],df.iloc[[1,2,4],[0,2]],df.iloc[1:3,:],df.iloc[:,1:3], df.iloc[1,1] = df.iat[1,1]
布尔索引:df[df.A > 0],df[df > 0],df2[df2[‘E’].isin([‘two’,‘four’])]
合并(Merge)
#连接(Concat):使用 concat()连接Pandas对象
**Join:**SQL风格的合并,使用merge()
stack() 的逆操作是unstack(),默认情况下取消最后压缩的那个级别:stacked.unstack()
需要from matplotlib import pyplot as plt, 显示图形使用命令plt.show()
列选择:标签选择df [‘one’]
列添加:类似字典赋值df[‘three’]=pd.Series([10,20,30],index=[‘a’,‘b’,‘c’])
列删除: del df[‘one’] or df.pop(‘one’)
行选择,添加和删除: 标签选择-可以通过将行标签传递给loc()函数来选择行,df.loc[‘b’]
按整数位置选择 - 可以通过将整数位置传递给iloc()函数来选择行, df.iloc[2]
行切片-可以使用:运算符选择多行,df[2:4]
删除行-使用索引标签从DataFrame中删除或删除行。 如果标签重复,则会删除多行。df.drop(‘a’)
附加行-使用append()函数将新行添加到DataFrame。