我是Pandas的新手
我的数据框:
df
A B
first True
second False
third False
fourth True
fifth False
期望输出
A B C
first True en
second False
third False
fourth True en
fifth False
当列 B
为 True
时,我正在尝试将函数应用于列 C
。
我使用的内容
if (df['B'] == True)):
df['C'] = df['A'].apply(
lambda x: TextBlob(x).detect_language())
但我遇到了一个错误:
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
我尝试过的方法
df['B'].bool()
df['B'] is True
df['B'] == 'True'
但错误仍然存在,不确定如何表达“仅在B列为True”的语句。 感谢您的建议。
==True
吗?我认为语句df['B']
表示行不为空,而不是其中的值不是False
。 - Jonas Palačionisdf['B'] == False
也可以使用~df['B']
。 - jezrael