服务器之家

服务器之家 > 正文

pandas 添加空列并赋空值案例

时间:2021-09-24 00:39     来源/作者:micromicrofat

创建测试dataframe:

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

添加两个空列

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

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

  1. >>> df['c'] = ''
  2. >>> df['d'] = ''

但如果这样

  1. >>> df[['c', 'd']] = ''
  2. 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个图片对应的都是那一个标签。)

实现代码:

pandas 添加空列并赋空值案例

代码说明:

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

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

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

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

pandas 添加空列并赋空值案例

5.扩展一个其他例子:

pandas 添加空列并赋空值案例

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

总结:

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

2.list真的简单好用。

3.搬砖使我快乐。

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

原文链接:https://blog.csdn.net/MacwinWin/article/details/108235600

标签:

相关文章

热门资讯

yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
2021年耽改剧名单 2021要播出的59部耽改剧列表
2021年耽改剧名单 2021要播出的59部耽改剧列表 2021-03-05
返回顶部