pandas行列删除,插入

本文介绍了如何在Pandas中进行行列操作,包括插入行、插入列、删除行、删除列,以及处理含有空值的行或列。详细阐述了各种方法,如使用reindex、直接插入、POP函数等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、插入行

1.可以通过reindex来重新整体实现删除和插入
2.索引插入一个值,再reindex,更新索引,再赋值。

frame=DataFrame(np.random.randn(3,3),index=list('abc'),columns=['ohio','texas','california'])
frame
x=frame.index.insert(2,'f')###索引里插入一条真的很麻烦,还要把数据重新做index一下
frame2=frame.reindex(x)
frame2.loc['f',:]=[1,2,3]
frame2

3.直接插入再末尾的行

frame.loc[0]=1### 插入行
frame

二、插入列

1.直接插在末尾

frame['shanghai']=1

2.对columns插入,再reindex

cols=list(frame)
cols=frame.columns.insert(0,'jiangsu')
frame.reindex(columns=cols,fill_value=2)

3.改变列的序列,将某列插入特定位置
使用POP函数

cols=list(frame)#这样就可以得到列名
cols.insert(0,cols.pop(cols.index('shanghai')))##利用pop 函数返回删除的内容,实际上还是在索引上操作,index直接不能用pop函数
frame=frame.reindex(columns=cols)
frame

4.两个表格时间的index是可以求集合的

df1=DataFrame(np.arange(9).reshape((3,3)),
              columns=list('bcd'),
              index=['zhejiang','shanghai','anhui'])
df2=DataFrame(np.arange(12).reshape((4,3)),
              columns=list('abc'),
              index=['zhejiang','shanghai','jiansu','shangdong'])
df1.add(df2,fill_value=0)#这样交集之外还是存在着空值啊
new_index=df1.index.union(df2.index)
new_columns=df1.columns.union(df2.columns)
df1=df1.reindex(index=new_index,columns=new_columns,fill_value=0)
df2=df2.reindex(index=new_index,columns=new_columns,fill_value=0)
df1.add(df2)

三、删除行

#drop()
frame2=frame.copy()
frame2.drop(index=2,axis=0)
#del 删除索引中的元素,在重新索引 
new=frame2.index.delete(3)
frame2.reindex(index=new)

四、删除列

#drop()
frame2.drop(columns='shanghai',index=1,inplace=False)
#del
del frame2['shanghai'] # 直接原表删除
#del 删除索引中的元素,在重新索引 
new=frame2.columns.delete('shanghai')
frame2.reindex(coulumns=new)

五、同时删除行和列

frame2.drop(index=0,columns='shanghai')
#同样可以用reindex 方法,同时设置index和columns

六、删除有空值的行或列

frame2['shangdong']=np.nan
frame2.dropna(how='all',axis=0)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值