python处理csv文件列错位_【Python】处理CSV文件,判断某一列和某个列表元素相等,并在相等元素后新增一列元素...

处理CSV文件,根据一个列表的内容来匹配第二列的内容,如果该列表有B列的元素,则在该元素对应的行数增加一列,新加的列输出为1

CSV数据为:

a475d1ea606cc11e2dfa75bfa3c18238.png

该数据和列表lis匹配,这个名为lis列表包括TDSC和IEEE Transactions on Mobile Computing等元素,如果CSV数据中的B列和列表中的数据一致,就在对应的新加的列数中输出1,理想效果如下:

a91409c1eb969d8c8e6b182c627796c8.png

请大神给出代码

回答

使用apply方法

df[‘C’] = df[‘B’].apply(lambda x: “1” if x in lis else ”)

例子如下:

In [1]: import pandas as pd

In [2]: df = pd.DataFrame({"name":["Jack", "Tony", "Robin"],"company":["Alibaba"

...: ,"Tencent", "Baidu"]})

In [3]:

In [3]: df

Out[3]:

name company

0 Jack Alibaba

1 Tony Tencent

2 Robin Baidu

In [4]: big_company = ["Alibaba", "Tencent"]

In [5]: df['is_big'] = df['company'].apply(lambda x: "1" if x in big_company els

...: e '')

In [6]: df

Out[6]:

name company is_big

0 Jack Alibaba 1

1 Tony Tencent 1

2 Robin Baidu

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值