文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

pandas 添加空列并赋空值案例

2024-04-02 19:55

关注

创建测试dataframe:


>>> import pandas as pd
>>> df = pd.DataFrame([{'a':1, 'b':2}, {'a':3, 'b':4}])
>>> df
 a b
0 1 2 
1 3 4 

添加两个空列


>>> df[['c','d']]=df.apply(lambda x:('',''),axis=1,result_type='expand')
>>> df
 a b c d
0 1 2 
1 3 4 

当然,一列一列添加也是可以的


>>> df['c'] = ''
>>> df['d'] = ''

但如果这样


>>> df[['c', 'd']] = ''
KeyError: "None of [Index(['c', 'd'], dtype='object')] are in the [columns]"

补充:pandas 插入空列_用pandas的DataFrame类型对CSV文件增加新列

问题描述:

1.有两个.csv文件,分别是df_val.csv和df_classes.scv。df_val.csv为2列36500行,df_classes.scv为3列365行。

2.两个csv文件的关系:其实是共365个文件夹,每个文件夹下有100个图片。df_val.csv为所有图片的路径,df_classes.scv为365个文件夹的名字和标签。

3.想要做什么:想要将df_classes.scv文件中的标签映射到df_val.csv文件中。(注:文件夹下的100个图片对应的都是那一个标签。)

实现代码:

代码说明:

1.我读第二个文件的时候和第一个代码不一样是因为,我第二个文件是以空格作为分隔符,第一个是逗号作为分隔符。所以要加上sep='\s'和engine='python',又因为我第二个文件中含有中文,所以需要加上encoding='UTF-8'。

2.print是中间结果的测试。

3.注意DataFrame类型的索引表示是[列][行]。

4.因为每100个对应另外一个文件夹中的一个,所以要用循环复制100次。可以参考下面这个例子:

5.扩展一个其他例子:

6.解决问题的思路就是,先用list做好需要添加的列,然后用insert加进去。还没有发现可以添加指定多少行的方法。

总结:

1.直线走不通就曲线救国。

2.list真的简单好用。

3.搬砖使我快乐。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。如有错误或未考虑完全的地方,望不吝赐教。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯