pandas的用法

创建

(1)创建空的:df_empty = pd.DataFrame(columns=['A', 'B', 'C', 'D'])

(2)读取csv:pd.read_csv('1.csv')

新增

(1)

a=pandas.DataFrame({'A':1,'B':1,'C':1,'D':1},index=[1])

df1=df_empty.append(a,ignore_index=True) #r如果不指定ignore_index=True,则index为a中指定的index,如果指定index=True,则index自动指定为缺失的index或下一个index

保存  data.to_csv("data.csv")

获得所有的列名:data_deep.columns.values.tolist()

修改某个值:pandas修改某个值的时候必须统一索引的方式:行列都按位置索引(data.iloc[第几行,第几列]),或者行列都按索引值索引(data.loc[行索引,列索引])

例子:

data:

按索引值索引:   json.loc[0,'buildExist']=0

按位置索引:

json.iloc[0,list(json).index('buildExist')]=1

将某个元素设置为list,array等可迭代的元素:

直接按上述方法设置会报错:Must have equal elements,所以需要按照下面方法设置

(1)先获得dataframe一行的frame:json_index=json.iloc[index]

(2)设置frame的值:json_index['xyoffset']=roofOffset

(3)设置dataframe: json.iloc[index]=json_index

 

 

进阶教程

筛选

(1)找出df中A列值为100的所有数据:df[df.A==100]

(2)找出df中A列值为100且B列值为‘a’的所有数据:df[(df.A==100)&(df.B=='a')]

(3)找出df中A列值为100或B列值为‘b’的所有数据:df[(df.A==100)|(df.B=='b')]

排序:根据bias的进行排序  data_b1_p1=data_b1_p1.sort_values(by=['bias'])

组合:参考https://www.jianshu.com/p/fe47c70d31f9  pd.concat  pd.merge

删除属性列或者修改属性列的列名:  https://blog.csdn.net/ZK_J1994/article/details/71246611  https://blog.csdn.net/dongcheng_/article/details/82901191

把属性A改为a,属性C改为c: a.rename(columns={'A':'a', 'C':'c'}, inplace = True)

按照列名删除列:df2 = df.drop(['B', 'C'], axis=1)

获得按条件索引后的行的index:data_deep[(data_deep['imag_name']=='IMG_0191')].index.tolist()

追加一列:首先保证处理的变量是DataFrame,而不是series,使用type(变量)查看变量的类型,使用pd.DataFrame(变量)将变量转为dataFrame,追加时,只需要变量['列名']=''即可追加一列

可视化:

 

 
 
 
 
 
 
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值