【发布时间】:2019-06-19 08:24:00
【问题描述】:
我有一个这样的数据框:
ColA ColB ColC
"lorem ipsum" ["lorem", "foo", "bar"]
"lorem ipsum" NaN
NaN ["lorem", "foo", "bar"]
NaN NaN
我正在尝试得到这个输出:
ColA ColB ColC
"lorem ipsum" ["lorem", "foo", "bar"] "lorem"
我尝试使用这样的理解列表:
df["C"] = [elem for elem in df["B"] if elem in df["A"] ]
但没有成功:
TypeError: unhashable type: 'list'
如果我将我的 ColB 格式化为列表,并且,
ValueError: Length of values does not match length of index
如果我使用元组
我们将不胜感激, 谢谢。
Edit + Edit 2:两列中只有一个单词(或无),我需要抓住它以将其放在 C 列中。 我也忘了提到 ColA 和 ColB 可以有 NaN 作为值。
【问题讨论】:
-
您是否只想要 一个 相交的单词(如果是,如果有多个,您想做什么)?或者你想要一个单词列表?
-
两列中只有一个词,我将编辑我的问题更明确
-
先检查ColB是String还是list?
标签: python python-3.x string pandas