我是Pandas的新手,正在尝试添加两个新列,其中的值是从现有的“Result”列计算出来的
现有列包括带有可选限定符(“<;”、”的数字>;','<>;'))
“结果”中的一些样本编号可能是:
0.5
12.67
3
<1
4.5
>10.0
我想要一个新的“Result_Q”列,其中包含非数值限定符(如果存在),否则为NULL(None),以及一个新的“Result_Value”列,其中包含数值组件
我的第一次尝试失败是:
df['Result_Q'] = df.Result.str[0] if not df.Result.str[0].isdigit() else None
这会产生错误AttributeError: 'Series' object has no attribute 'isdigit'
(在研究了这个错误之后,我尝试了其他一些产生错误的变体
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all()
)
或者尝试:
输出:
您可以使用
df.apply
创建新列:将^{} 与^{} 一起使用:
替换为^{} :
或^{} 将
NaN
更改为None
:相关问题 更多 >
编程相关推荐