微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python-有条件地写入xlsx

伙计们,

我目前正在使用庞大的Excel工作表,python 3.7.1和pandas 0.23.4.
我的任务是根据条件匹配写入单元格.像这样:

val = lincoln@gmx.net
if val in Cell_3A:
    write something to Cell_3B

一个完整的例子,让我们说以下是我的数据框:

    Email               Protection
1   lincoln@gmail.net
2   obama@gmail.net
3   trump@gmail.net
4   franklin@gmail.net

我知道要写下来,除第3行中的电子邮件外,所有电子邮件均受保护.因此,完成的数据框应如下所示:

    Email               Protection
1   lincoln@gmail.net   on
2   obama@gmail.net     on
3   trump@gmail.net     off
4   franklin@gmail.net  on

我该如何实现?

解决方法:

过滤“电子邮件”不是“ trump@gmail.net”的“保护”列,然后将其分配为“开启”,反之亦然.

df.loc[df['Email']!='trump@gmail.net', 'Protection']='on'
df.loc[df['Email']=='trump@gmail.net', 'Protection']='off'

使用np.where:

df['Protection'] = np.where((df['Email']!='trump@gmail.net'),'on','off')

要么:

df['Protection'] = np.where((df['Email']=='trump@gmail.net'),'off','on')

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐