我有一个类似这样的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,但这是第二行的错误。
怎么了?
谢谢
答案 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')