pandas修改DataFrame行/列/字段值

您所在的位置:网站首页 如何替换某一列数据 pandas修改DataFrame行/列/字段值

pandas修改DataFrame行/列/字段值

2023-12-26 08:09| 来源: 网络整理| 查看: 265

增加/修改一列

有如下几种方法增加一列:

增加具有相同值的一列 import pandas as pd dict= {'English':[85,73,98], 'Math':[60,80,58], 'Science':[90,60,74], 'French': [95,87,92] } df=pd.DataFrame(dict,index=['2018','2019','2020']) print(df) print('\n') print('Adding new column:') print('\n') df['Economics']=99 print(df)

结果如下:

在这里插入图片描述

增加定制值的一列,此方法也可以修改原有值 df['Economics']=99 df['Economics']=[99,85,56] print(df) df.at[:,'Economics']=[78,85,74] print(df) df.loc[:,'Economics']=[94,87,86] print(df) df2=df.assign(Economics=[92,81,66]) print(df)

输出如下:

在这里插入图片描述

增加/修改一行

语法基本同列,直接上代码:

# 增加具有相同值的一行 df.at[2021,:]=100 print(df) # 定制值,该方法也可修改该行原有值 df.loc['2022',:]=[89,21,87,59,22] print(df)

输出如下:

在这里插入图片描述

删除列

代码:

# 只有删除一列 del df['Economics'] # 可删除多列,有多个参数,其中,axis=1表示列,0表示行,inplace表示是否本地修改,默认False,返回修改后的df,原df不变,True则表示修改原来的df df.drop(['English','Science'],axis=1,inplace=True)

结果如下:

在这里插入图片描述

删除行

使用drop即可:

import pandas as pd dict= {'English':[85,73,98], 'Math':[60,80,58], 'Science':[90,60,74], 'French': [95,87,92] } df=pd.DataFrame(dict,index=['2018','2019','2020']) df.at[2021,:]=100 df.at[2022,:]=[99,98,97,96] print(df) print('\n') print('Deleting a row:') print('\n') df.drop(['2019'],axis=0,inplace=True) print(df) print('\n') print('Deleting multiple rows:') print('\n') df.drop(df.index[[0,2]],axis=0,inplace=True) print(df)

结果如下:

在这里插入图片描述

修改指定值

可以基于指定的列名和行名修改,也可以根据指定的行号和列号修改。

示例如下:

import pandas as pd dict= {'English':[85,73,98], 'Math':[60,80,58], 'Science':[90,60,74], 'French': [95,87,92] } df=pd.DataFrame(dict,index=['2018','2019','2020']) print(df) # 基于指定的列名和行名修改 using_name=df.Math['2019']=99 print(df) # 根据指定的行号和列号修改 using_index=df.iloc[2,2]=99 print(df)

结果如下:

在这里插入图片描述

小结

DataFrame提供了丰富的方法来操作数据,可以方便地对行列进行增删改操作。

参考资料:https://www.c-sharpcorner.com/article/add-assign-and-modify-values-in-dataframe/



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3