在Python的pandas库中,您可以使用pd.cut
或pd.qcut
函数在列之间进行划分,并将结果存储在新的数据帧(DataFrame)中
首先,导入pandas库并创建一个简单的数据帧:
import pandas as pd
data = {'score': [55, 66, 77, 88, 99]}
df = pd.DataFrame(data)
数据帧内容如下:
score
0 55
1 66
2 77
3 88
4 99
pd.cut
进行划分pd.cut
允许您根据自定义区间对数据进行划分。例如,假设您想根据分数将学生分为三个等级:低(Low),中(Medium)和高(High)。
# 自定义区间和标签
bins = [0, 60, 80, 100]
labels = ['Low', 'Medium', 'High']
# 添加一个新列 "grade" 到数据帧中
df['grade'] = pd.cut(df['score'], bins=bins, labels=labels, right=False)
现在,数据帧更新为:
score grade
0 55 Low
1 66 Low
2 77 Medium
3 88 High
4 99 High
pd.qcut
进行划分pd.qcut
根据指定的分位数对数据进行划分,使每个区间内的数据点数量大致相等。例如,将学生按分数分为三等分:
# 添加一个新列 "grade_q" 到数据帧中
df['grade_q'] = pd.qcut(df['score'], q=3, labels=['Low', 'Medium', 'High'])
现在,数据帧更新为:
score grade grade_q
0 55 Low Low
1 66 Low Low
2 77 Medium Medium
3 88 High High
4 99 High High
现在,您已经成功地在列之间进行了划分,并将结果存储在了新的数据帧中。
领取专属 10元无门槛券
手把手带您无忧上云