在python数据框架中创建表情列

在python数据框架中创建表情列,python,dataframe,emoji,Python,Dataframe,Emoji,我正试图将客户评论中的表情符号提取到python数据框架中的一个单独的列中。 我使用的代码是: def表情符号(回顾): 内容=回顾 for i in Content: if i in emoji.UNICODE_EMOJI: return i else: return 'NaN' 问题是它不能从内容中提取所有表情符号。有什么办法解决这个问题吗?您需要使用列表理解 在这方面: for i in Content: if i in emoji

我正试图将客户评论中的表情符号提取到python数据框架中的一个单独的列中。 我使用的代码是:

def表情符号(回顾): 内容=回顾

for i in Content:
    if i in emoji.UNICODE_EMOJI:
        return i
    else:
        return 'NaN'

问题是它不能从内容中提取所有表情符号。有什么办法解决这个问题吗?

您需要使用列表理解

在这方面:

for i in Content:
    if i in emoji.UNICODE_EMOJI:
它将始终返回False,因为如果它位于
emoji.UNICODE\u emoji
中,则检查整个内容

所以你需要的是:

emoji_list = []
dummy_list = []
for i in Content:
    dummy_list.extend([c for c in Content if c in emoji.UNICODE_EMOJI])
    if len(dummy_list) == 0:
        emoji_list.append(np.nan)
    else:
        emoji_list.append(dummy_list)
    dummy_list = []
你的问题中没有一个样本,所以只需根据逻辑来回答上面的问题

我们使用了
列表
,因为您希望内容的每个条目/行的数据帧上都有一列

只需使用
df['Emoji entry on the content']=Emoji\u list

请参考此链接