Python ValueError:在数据帧上执行行操作时,无法将输入数组从形状(5)广播到形状(4)

Python ValueError:在数据帧上执行行操作时,无法将输入数组从形状(5)广播到形状(4),python,pandas,lambda,Python,Pandas,Lambda,我有一个熊猫数据框(data),它有两列,包含单词列表(示例如下): 当我运行下面的代码时: data['uncommon_words']= data.apply(lambda row: list(set(row['col1']) - set(row['col2'])), axis=1) 我收到错误消息: ValueError:无法将输入数组从形状(5)广播到形状(4) 有人能帮我解决这个错误吗。我已经检查了多个其他类似的帖子,但找不到解决这个问题的方法。我正在使用Python 3.5.2您

我有一个熊猫数据框(data),它有两列,包含单词列表(示例如下):

当我运行下面的代码时:

data['uncommon_words']= data.apply(lambda row: list(set(row['col1']) - set(row['col2'])), axis=1)
我收到错误消息: ValueError:无法将输入数组从形状(5)广播到形状(4)


有人能帮我解决这个错误吗。我已经检查了多个其他类似的帖子,但找不到解决这个问题的方法。我正在使用Python 3.5.2

您的代码对我来说运行良好

df = pd.DataFrame({'col1':[['jones','snmart','ticket'],['alpha','female','she'],['uranus','mars','saturn']],'col2':[['smart'],['is','she'],['mars','planet']]})
print(df)
输入df:

                      col1            col2
0  [jones, snmart, ticket]         [smart]
1     [alpha, female, she]       [is, she]
2   [uranus, mars, saturn]  [mars, planet]

df['uncommon_words']= df.apply(lambda row: list(set(row['col1']) - set(row['col2'])), axis=1)

print(df)
输出:

                      col1            col2           uncommon_words
0  [jones, snmart, ticket]         [smart]  [jones, ticket, snmart]
1     [alpha, female, she]       [is, she]          [alpha, female]
2   [uranus, mars, saturn]  [mars, planet]         [saturn, uranus]

你的代码对我很有效

df = pd.DataFrame({'col1':[['jones','snmart','ticket'],['alpha','female','she'],['uranus','mars','saturn']],'col2':[['smart'],['is','she'],['mars','planet']]})
print(df)
输入df:

                      col1            col2
0  [jones, snmart, ticket]         [smart]
1     [alpha, female, she]       [is, she]
2   [uranus, mars, saturn]  [mars, planet]

df['uncommon_words']= df.apply(lambda row: list(set(row['col1']) - set(row['col2'])), axis=1)

print(df)
输出:

                      col1            col2           uncommon_words
0  [jones, snmart, ticket]         [smart]  [jones, ticket, snmart]
1     [alpha, female, she]       [is, she]          [alpha, female]
2   [uranus, mars, saturn]  [mars, planet]         [saturn, uranus]

这些看起来不是列表,而是实际的stings,因为没有元素包装的引号。这些看起来不是列表,而是实际的stings,因为没有元素包装的引号。