在Python中按其他列筛选数据列

2024-06-16 08:41:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在分析tweet,我有一个数据帧df1 这有一个单一的变量和tweet的文本,我有另一个数据帧df2,它包含两个变量,第一个是带有情绪的单词,第二个是带有情绪值的单词

我想创建一个新的数据框架,它只提取tweet,在tweet中找到这种感觉的词,并将它的价值放在上面

print(df1)
    0     @Brenamae_ I WHALE SLAP YOUR FIN AND TELL YOU ...
    1    Metin Şentürk Twitterda @metinsenturk MUHTEŞEM...
    2    RT @byunghns: 😭 I LOVE #틴탑 SO MUCH #쉽지않아 IS GO...
    3    que hdp maicon lo que le hizo a david luiz jaj...

print(df2)
        1       2
0   abandoned  -2
1    abandons  -2
2    abducted  -2

Tags: 数据文本框架单词tweetquedf1df2
1条回答
网友
1楼 · 发布于 2024-06-16 08:41:15
First DF:
name: dfTweet
columns: [tweet]

Second DF:
name: dfSentiment
columns: [sentiment, value]

newDF = pd.DataFrame(columns = [tweet, value])
indexSentTweet = [] 
    
for indexSent, sent in enumerate(dfSentiment):
    indexValueTweet = [[dfTweet['tweet'].iloc[index], dfSentiment['value'].iloc[index]] for index, x in enumerate(dfTweet['tweet'].str.contains(sent)) if x] # List comprehension to reduce the number of "for".

newDF = newDF.append(pd.DataFrame(indexValueTweet, columns = ['tweet', 'value']))

我更改了列名以便于理解

相关问题 更多 >