#Pandas:
采用pandas的DataFrame的有点事有index和columns,因此用DataFrame是最好都要设置index和columns
新建空白DataFrame:aa = pd.DataFrame(index=[1,2,3], columns=['age', 'name', 'sex'])
##用于添加某一行,可以采用append方法,但是注意append不能改变DataFrame,如
import pandas as pd
aa = pd.DataFrame([[2,3,4]])
aa.append([[2,2,2]])
print (aa)
结果仍为[2,3,4]
可以采用以下更新:aa = aa.append([[2,2,2]])
除此之外,可以采用concat方法来合并DataFrame,可以设置axis=0为行合并,设置axis=1为列合并
##对于新建DataFrame,注意以下差别
aa = pd.DataFrame([2,3,4])
bb = pd.DataFrame([[2,3,4]])
print(aa)
print(bb)
其中aa为列数据,bb为行数据
##对于提取DataFrame列数据,可以采用两种形式:1.采用pd['columns']; 2.采用pd.columns
aa = pd.DataFrame([[2, 3, 4], [2, 2, 2]], columns=['a', 'b', 'c'])
提取b列,可以采用aa['b']或aa.b
增加DataFrame某一列,可采用以下方法
aa['d'] = [5,5]
若采用aa['d'] = 5, 也可以添加成功,但是可能会提示caveat.
##对于DataFrame切片,pd.loc[]针对index和columns, pd.iloc[]针对行号和列号
Pandas里面有个很好用的时间index,例如新建
dates = pd.date_range('2009-01-01', periods = 365) #生成一年的时间
dates = pd.date_range('2009-01-01', '2010-01-01', freq='M') # 在2009-01-01和2010-0101之间以月为间隔生成时间 freq还可以选‘D’,'Y‘
##数据导出csv、或excel
aa=pd.DataFrame(np.random.rand(100,3), columns=['a', 'b', 'c'])
aa.to_csv(filename)/pd.read_csv(filename) #保存和读取文件
aa.to_excel(filename, sheet_name='Sheet1') #保存至excel表
##读取excel文档:
pd.read_excel(filename, 'Sheet1', index_col=None, na_values=['NA'])
##读取txt文档
pd.read_csv(filename, header=None, index_col=None, sep=',') #其中分隔符为逗号,若为空格可采用 sep=’\\s+‘