我有一个包含list作为元素的df。
df = pd.DataFrame({'q': [['', 'Id'], [', ', 'Be', ', '], [', ', ''], ['ProgramServiceStatusId', '']]})
我只想保留包含字母数字字符的元素。
预期的输出将是
q
0 [Id]
1 [Be]
2 []
3 [ProgramServiceStatusId]
我提到了这个问题,但它需要两个循环:
Python keep only alphanumeric words from list
第一个遍历df列,第二个遍历单个列表。
我想知道是否有更简单的方法可以做到这一点。
谢谢
答案 0 :(得分:1)
在Series.apply
中使用lambda函数:
df['q'] = df['q'].apply(lambda x: [i for i in x if i.isalpha()])
print (df)
q
0 [Id]
1 [Be]
2 []
3 [ProgramServiceStatusId]