我怎么知道另一列中有值?

时间:2019-08-20 11:25:12

标签: python pandas

我有一个类似这样的df:

$ ns file.tcl -nn 12
lst = [[30029509,37337567,41511334,41511334,41511334]]
lst2 = [35619048]
lst3 = [[41511334,37337567,41511334]]
lst4 = [[37337567,41511334]]

我需要计算每列中有一个“ 41511334”的次数 我执行以下代码:

df = pd.DataFrame()
df['0'] = lst, lst2, lst3, lst4

我在每一列的行中都得到True,但这是第二行的错误。

怎么了?

谢谢

1 个答案:

答案 0 :(得分:0)

str(df['0'])给出了列0的字符串表示形式,因此包括所有数据。然后您将看到

'41511334' in str(df['0'])

给出True,然后将其分配给“新”列的每一行。您正在寻找类似

的东西
df['new'] = df['0'].apply(lambda x: '41511334' in str(x))

df['new'] = df['0'].astype(str).str.contains('41511334')