首页 >> 中医美容

利用 Pandas 进行分类数据编码的十种模式

发布时间:2025年11月16日 12:18

['Score']).reshape(-1,1))

df5['Score_Label'] = trans

评注DF统计数据 示意图详述越来越少用的,对评注统计数据透过切换打附加。例如导入一列,将性别男、女分别标上为0、1

采用 replace 首先为详述replace,但要注意的是,右边说过的定制表达式之外作法依旧是可行的

df6 = df.copy()

df6['Sex_Label'] = df6['Sex'].replace(['Male','Female'],[0,1])

右边是对性别操作者,因为只有男同志,所以可以手动原则上0、1,但要是类别很多,也可以采用pd.value_counts()来自动原则上附加,例如对Course Name列分分组

df6 = df.copy()

value = df6['Course Name'].value_counts()

value_map = dict((v, i) for i,v in enumerate(value.index))

df6['Course Name_Label'] = df6.replace({'Course Name':value_map})['Course Name']

采用map 额外强调的是,导入一列,一定要能够忘了map

df7 = df.copy()

Map = {elem:index for index,elem in enumerate(set(df["Course Name"]))}

df7['Course Name_Label'] = df7['Course Name'].map(Map)

采用astype 这个作法某种程度很多人不告诉他,这就属于右边提到的知乎难题,能解决问题的作法太多了

df8 = df.copy()

value = df8['Course Name'].astype('category')

df8['Course Name_Label'] = value.cat.codes

采用 sklearn 同数参数DF一样,这种数据处理中所的当今操作者,sklearn一定有事先为,采用LabelEncoder可以对分类统计数据透过解码

from sklearn.preprocessing import LabelEncoder

df9 = df.copy()

le = LabelEncoder()

le.fit(df9['Sex'])

df9['Sex_Label'] = le.transform(df9['Sex'])

le.fit(df9['Course Name'])

df9['Course Name_Label'] = le.transform(df9['Course Name'])

常规切换两列也是可以的

df9 = df.copy()

le = OrdinalEncoder()

le.fit(df9[['Sex','Course Name']])

df9[['Sex_Label','Course Name_Label']] = le.transform(df9[['Sex','Course Name']])

采用factorize 之前,先为详述一个小众但好用的pandas作法,我们需要注意到,在右边的作法中所,自动生成的Course Name_Label列,虽然一个统计数据并不相同一个语法,因为避免写成定制表达式或者修订版,这样可以自动生成,所以大多是无序的。

如果我们希望它是全局的,也就是 Python 并不相同 0,Java并不相同1,除了自己原则上,还有什么优雅的事先为?这时可以采用factorize,它会根据出现时序透过解码

df10 = df.copy()

df10['Course Name_Label'] = pd.factorize(df10['Course Name'])[0]

结合匿名表达式,我们可以实在对多列透过全局解码切换

df10 = df.copy()

cat_columns = df10.select_dtypes(['object']).columns

df10[['Sex_Label', 'Course Name_Label']] = df10[cat_columns].apply(

lambda x: pd.factorize(x)[0])

总结 曾一度,我要详述的十种pandas统计数据解码的作法就分享完毕,code拿走改写成变量名就能用,关于这个难题如果你有越来越多的作法,可以在评论区透过推特~

现今回到文章结尾的难题,如果你觉得pandas用起来很内乱,说明你可能还未能对pandas有一个全面且完全的了解。

说是就像本文详述统计数据解码切换一样,毕竟有很多作法可以解决问题显得很内乱,但求学pandas的适当手部就是某种程度把它拿来修订版来学,不必记住所有作法与技术细节,你只需告诉他有这么个表达式能已完成这样操作者,需要只用能忘了,忘了先为来查就行。

南京癫痫哪家医院最好
北京妇科医院去哪家好
株洲哪家医院做人流比较好
镇江白癜风医院哪家正规
重庆男科专科医院哪家好
嘴溃疡
面部整形
老年病内科
二阳后总是疲惫不堪?医生揭秘:病毒正在摧毁你的“能量工厂”!
流感引起的咳嗽吃什么快速止咳

上一篇: 武汉高三学生发现小行星,并握有命名权!

下一篇: 三款小米重磅旗舰披露 12 Ultra或分屏下和常规版本

友情链接