要对 Excel 表格中的某列连续数值型数据进行分箱,可以使用 Python 的 pandas 库和 numpy 库来实现。

首先,需要安装 pandas 库和 numpy 库。可以使用以下命令进行安装:

pip install pandas numpy

接下来,可以使用以下代码读取 Excel 表格中的数据,并将某列数据存储在一个 pandas 的 Series 对象中:

import pandas as pd

# 读取 Excel 表格中的数据
df = pd.read_excel('data.xlsx')

# 将某列数据存储在 Series 对象中
data = df['column_name']

然后,可以使用 numpy 的 cut 函数进行分箱。cut 函数可以根据指定的条件将数据分成多个箱子。以下是一个示例代码:

import numpy as np

# 指定分箱的条件
bins = [0, 10, 20, 30, np.inf]

# 使用 cut 函数进行分箱
labels = ['<10', '10-20', '20-30', '>=30']
categories = pd.cut(data, bins=bins, labels=labels)

# 将分箱结果添加到原始数据中
df['categories'] = categories

在上述代码中,bins 变量指定了分箱的条件,labels 变量指定了每个箱子的标签。cut 函数会根据这些条件将 data 分成多个箱子,并返回一个 pandas 的 Categorical 对象。最后,将分箱结果添加到原始数据中。

最后,可以将分箱结果保存为新的 Excel 表格。以下是一个示例代码:

# 保存分箱结果为新的 Excel 表格
df.to_excel('output.xlsx', index=False)

在上述代码中,使用 to_excel 方法将 DataFrame 对象保存为 Excel 表格,index=False 表示不保存索引列。

完整的代码示例如下:

import pandas as pd
import numpy as np

# 读取 Excel 表格中的数据
df = pd.read_excel('data.xlsx')

# 将某列数据存储在 Series 对象中
data = df['column_name']

# 指定分箱的条件
bins = [0, 10, 20, 30, np.inf]

# 使用 cut 函数进行分箱
labels = ['<10', '10-20', '20-30', '>=30']
categories = pd.cut(data, bins=bins, labels=labels)

# 将分箱结果添加到原始数据中
df['categories'] = categories

# 保存分箱结果为新的 Excel 表格
df.to_excel('output.xlsx', index=False)

注意:在代码中需要将 'column_name' 替换为实际的列名,'data.xlsx' 替换为实际的 Excel 文件名,'output.xlsx' 替换为保存分箱结果的文件名。

Python Excel 数据分箱:使用 Pandas 和 NumPy 对连续数值型数据进行分组

原文地址: https://www.cveoy.top/t/topic/pbNw 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录