想要 get_dummies 获取列中最频繁出现的值 - Pandas
Wanting to get_dummies for the most frequest values in a column - Pandas
我正在开发一个程序来浏览推文并预测作者是否属于两类之一。我想 get_dummies 了解一条推文是否包含前 10 个主题标签中的任何一个,或者它是否包含 'other'。 (最后我可能会使用前 500 个左右的主题标签,而不仅仅是 10 个,数据集总共超过 500,000 列,有超过 50,000 个独特的主题标签)
这是我第一次使用 pandas,如果我的问题不清楚,我深表歉意,但我想我期望的是数据集中的每一行都会有一个新列,每行一个标签,然后如果该行包含该标签,则该 [行][列] 对的值将为 1,否则为 0。还会有一个 other 列,表示它有其他不在前 10 名中的主题标签。
我知道如何确定列中出现频率最高的已经
counts = df.hashtags.value_counts()
counts.nlargest(10)
我也知道如何获取假人,我只是不知道如何添加不为每个主题标签制作一个的参数。
dummies = pd.get_dummies(df, columns=['hashtags'])
如果我可以更清楚或提供更多信息,请告诉我。感谢您的帮助!
没有时间生成数据并全力以赴。但是,尽管我会为您提供这个想法,以防它对您有所帮助。
这个想法是利用 .isin()
来获取构建假人所需的值。然后利用索引的力量来匹配源行。
类似于:
pd.get_dummies(df.loc[df['hashtags'].isin(counts.nlargest(10).index)], columns=['hashtags'])
您将不得不看看指数是否能满足您的需求。
我正在开发一个程序来浏览推文并预测作者是否属于两类之一。我想 get_dummies 了解一条推文是否包含前 10 个主题标签中的任何一个,或者它是否包含 'other'。 (最后我可能会使用前 500 个左右的主题标签,而不仅仅是 10 个,数据集总共超过 500,000 列,有超过 50,000 个独特的主题标签)
这是我第一次使用 pandas,如果我的问题不清楚,我深表歉意,但我想我期望的是数据集中的每一行都会有一个新列,每行一个标签,然后如果该行包含该标签,则该 [行][列] 对的值将为 1,否则为 0。还会有一个 other 列,表示它有其他不在前 10 名中的主题标签。
我知道如何确定列中出现频率最高的已经
counts = df.hashtags.value_counts()
counts.nlargest(10)
我也知道如何获取假人,我只是不知道如何添加不为每个主题标签制作一个的参数。
dummies = pd.get_dummies(df, columns=['hashtags'])
如果我可以更清楚或提供更多信息,请告诉我。感谢您的帮助!
没有时间生成数据并全力以赴。但是,尽管我会为您提供这个想法,以防它对您有所帮助。
这个想法是利用 .isin()
来获取构建假人所需的值。然后利用索引的力量来匹配源行。
类似于:
pd.get_dummies(df.loc[df['hashtags'].isin(counts.nlargest(10).index)], columns=['hashtags'])
您将不得不看看指数是否能满足您的需求。