失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > python dataframe dropna_在Python中使用熊猫在两个DataFrame之间进行值...

python dataframe dropna_在Python中使用熊猫在两个DataFrame之间进行值...

时间:2020-07-18 04:41:49

相关推荐

python dataframe dropna_在Python中使用熊猫在两个DataFrame之间进行值...

嗨,我有两个像下面的DataFrames

DF1

Alpha | Numeric | Special

and | 1 | @

or | 2 | #

lol ok | 4 | &

DF2 with single column

Content

boy or girl

school @ morn

pyc LoL ok student

Chandra

我想搜索DF1列中的任何人是否在DF2内容列中的任何关键字,并且输出应该在新的DF中

`df11 = (df1.unstack()

.reset_index(level=2,drop=True)

.rename_axis(('col_order','col_name'))

.dropna()

.reset_index(name='val_low'))

df22 = (df2['Content'].str.split(expand=True)

.stack()

.rename('val')

.reset_index(level=1,drop=True)

.rename_axis('idx')

.reset_index())`

df22['val_low'] = df22['val'].str.lower()

df = (pd.merge(df22, df11, on='val_low', how='left')

.dropna(subset=['col_name'])

.sort_values(['idx','col_order'])

.drop_duplicates(['idx']))

df = (pd.concat([df2, df.set_index('idx')], axis=1)

.fillna({'col_name':'Other'})[['val','col_name','Content']])

但它没有考虑大声笑之间的空格

expected_output_DF

val col_name Content

0 or Alpha boy or girl

1 @ Special school @ morn

2 lol ok Alpha pyc LoL ok student

3 NaN Other Chandra

有人帮我这个

如果觉得《python dataframe dropna_在Python中使用熊猫在两个DataFrame之间进行值...》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。