谢谢你先回答。如果条件为0,我想将地址和邮政编码合并,如果条件为1,则将地址和邮政编码合并为1。我尝试了以下方法,但没有得到想要的结果。请问是不是数据类型有问题。请多多指教。
import pandas as pd
import numpy as np
data = pd.read_csv('./address.csv')
data['full address'] = np.where(data['condition']='0', data['address']+'-'+data['postcode'], data['address']+'-'+data['postcode']+'-'+data['condition'])
输出
<块引用>语法错误:关键字不能是表达式
预期输出
答案 0 :(得分:0)
正如 @quang-hoang 在评论中指出的那样,语法不正确。此外,如果列数据类型为 int,则从 0 中删除单引号。您需要 ==
来检查相等性。
请注意,当 np.where
不等于 0 时,编写的 data['address']+'-'+data['postcode']+'-'+data['condition']
函数也将输出 data['condition']
。if-then-else 子句必不可少。
import pandas as pd
import numpy as np
data = pd.read_csv('./address.csv')
data['full address'] = np.where(
data['condition']== 0,
data['address']+'-'+data['postcode'],
data['address']+'-'+data['postcode']+'-'+data['condition']
)