使用 Pandas 合并相似数据

如何将“推荐”等类似数据合并为一个值?


df['Why you choose us'].str.lower().value_counts()


location                           35

recommendation                     23

recommedation                       8

confort                             7

availability                        4

reconmmendation                     3

facilities                          3

http://img1.mukewang.com/6407f28d0001562119200756.jpg

隔江千里
浏览 72回答 1
1回答

繁星coding

打印(df)            reason  count0         location     351   recommendation     232    recommedation      83          confort      74     availability      45  reconmmendation      36       facilities      3.groupby(), 部分字符串。.transform()同时找到sumdf['groupcount']=df.groupby(df.reason.str[0:4])['count'].transform('sum')          reason  count  groupcount0         location     35          351   recommendation     23          342    recommedation      8          343          confort      7           74     availability      4           45  reconmmendation      3          346       facilities      3           3如果需要并排查看字符串和部分字符串。尝试df=df.assign(groupname=df.reason.str[0:4])df['groupcount']=df.groupby(df.reason.str[0:4])['count'].transform('sum')print(df)      reason  count groupname  groupcount0         location     35      loca          351   recommendation     23      reco          342    recommedation      8      reco          343          confort      7      conf           74     availability      4      avai           45  reconmmendation      3      reco          346       facilities      3      faci           3如果你有多个连续的项目,就像你在 csv 中一样;然后#Read csvdf=pd.read_csv(r'path')#Create another column which is a list of values 'Why you choose us' in each rowdf['Why you choose us']=(df['Why you choose us'].str.lower().fillna('no comment given')).str.split(',')#Explode group to ensure each unique reason is int its own row but with all the otehr attrutes intactdf=df.explode('Why you choose us')#remove any white spaces before values in the column group and value_countsdf['Why you choose us'].str.strip().value_counts()print(df['Why you choose us'].str.strip().value_counts())location            48no comment given    34recommendation      25confort              8facilities           8recommedation        8price                7availability         6reputation           5reconmmendation      3internet             3ac                   3breakfast            3tranquility          2cleanliness          2aveilable            1costumer service     1pool                 1comfort              1search engine        1Name: group, dtype: int64
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python