【发布时间】:2020-05-13 13:31:25
【问题描述】:
我有一个直截了当的问题,但我遇到了转换问题。
我有一个转换为列表的 pandas 数据框列。它既有正值又有负值:
bin_length = 5
列表 = [-200, -112, -115, 0, 50, 120, 250]
我需要将这些数字分组到一个长度为 5 的 bin 中。
例如:
-100 到 -95 的值应为 -100
-95 到 -90 的值应为 -95
对于正值也是如此:
0 到 5 应该是 5
5 到 10 应该是 10
到目前为止我所尝试的:
df = pd.DataFrame(dataframe['rd2'].values.tolist(), columns = ['values'])
bins = np.arange(0, df['values'].max() + 5, 5)
df['bins'] = pd.cut(df['values'], bins, include_lowest = True)
但这不考虑负值,然后我在将熊猫间隔转换为单独的列表列时遇到问题。
任何帮助都会很棒。
【问题讨论】:
-
为什么你的范围从 0 开始而不是
bins = np.arange(df["values"].min(), df['values'].max() + 5, 5)? -
修复了这个问题。如何将间隔转换为列表?
标签: python-3.x pandas list