Python 相当于大熊猫的fct_肿块
Python中是否有一个函数可以实现R fct_lump函数的功能(即将太小的所有组分组到一个“其他”组) 示例如下:Python 相当于大熊猫的fct_肿块,python,r,pandas,forcats,Python,R,Pandas,Forcats,Python中是否有一个函数可以实现R fct_lump函数的功能(即将太小的所有组分组到一个“其他”组) 示例如下: library(dplyr) library(forcats) > x <- factor(rep(LETTERS[1:9], times = c(40, 10, 5, 27, 1, 1, 1, 1, 1))) > x [1] A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A
library(dplyr)
library(forcats)
> x <- factor(rep(LETTERS[1:9], times = c(40, 10, 5, 27, 1, 1, 1, 1, 1)))
> x
[1] A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A B B B B B B B B
[49] B B C C C C C D D D D D D D D D D D D D D D D D D D D D D D D D D D E F G H I
Levels: A B C D E F G H I
> x %>% fct_lump_n(3)
[1] A A A A A A A A A A A A A A A A
[17] A A A A A A A A A A A A A A A A
[33] A A A A A A A A B B B B B B B B
[49] B B Other Other Other Other Other D D D D D D D D D
[65] D D D D D D D D D D D D D D D D
[81] D D Other Other Other Other Other
Levels: A B D Other
库(dplyr)
图书馆(供猫用)
>x x
[1] A A A A A A A A A A A A A A A A A A A A A A A A A A B B B B
[49]B C C D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D
级别:A B C D E F G H I
>x%>%fct\u块(3)
[1] A A A A A A A A A A A A A A A A A A A
[17] A A A A A A A A A A A A A A A A A A A
[33]A A A B B B B B
[49]B其他其他其他D
[65]D
[81]D其他
级别:A B D其他
看一看a和/,它似乎更活跃。请在回答中添加一些说明,解释你的答案的作用以及OP代码的问题所在。
pip install siuba
#( in python or anaconda prompth shell)
#use library as:
from siuba.dply.forcats import fct_lump, fct_reorder
#just like fct_lump of R :
df['Your_column'] = fct_lump(df['Your_column'], n= 10)
df['Your_column'].value_counts() # check your levels
#it reduces the level to 10, lumps all the others as 'Other'