pandas创建新的dataframe包含所有离散化后的值
时间: 2023-09-26 17:09:32 浏览: 90
利用Python将数值型特征进行离散化操作的方法
要创建一个包含所有离散化后值的新的dataframe,你需要先将原始数据进行离散化处理,然后使用pandas的concat函数将离散化后的数据与原始数据合并起来。
首先,假设你已经将原始数据存储在一个名为df的dataframe中,并且你已经将其中一个列进行了离散化处理,存储在一个名为discretized_col的Series中。那么你可以按照以下方式创建一个新的dataframe包含所有离散化后的值:
```
# 创建一个新的dataframe,包含所有离散化后的值
new_df = pd.concat([df, discretized_col], axis=1)
```
这将在原始数据的右侧添加一个新列,其中包含离散化后的值。如果你有多个需要离散化的列,你可以将它们全部离散化后再进行合并,例如:
```
# 将多个离散化后的列合并到一个新的dataframe中
discretized_col1 = pd.cut(df['col1'], bins=10)
discretized_col2 = pd.qcut(df['col2'], q=5)
new_df = pd.concat([df, discretized_col1, discretized_col2], axis=1)
```
这将创建一个新的dataframe,其中包含原始数据和两个离散化后的列。注意,这里使用了不同的离散化函数,一个是cut函数,一个是qcut函数,这是因为它们适用于不同类型的数据。你需要根据自己的实际情况选择合适的函数。
阅读全文