python - 从 pandas groupby 中提取列作为向量
问题描述
我使用 pandas 的 groupby 函数创建了这个表,并希望将每一列提取为向量/数组
df_duration_means = df.groupby('Duration').mean()
兴趣 | 贷款额度 | 生命周期价值 | |
---|---|---|---|
期间 | |||
6 | 0.107500 | 274000.000000 | 0.652500 |
9 | 0.112500 | 510500.000000 | 0.580000 |
12 | 0.105345 | 276632.758621 | 0.595517 |
15 | 0.080000 | 81000.000000 | 0.678000 |
18 | 0.109167 | 516557.666667 | 0.455867 |
24 | 0.101500 | 374500.000000 | 0.554800 |
现在我想为 4 列(包括持续时间)中的每一列提取一个向量。但我无法做到这一点,甚至检查了熊猫文档和所有可能的类似线程。
dur = df_duration_means.index
print(dur)
interest_mx = df_duration_means['Loan amount']
print(interest_mx)
这样我就可以绘制每个列向量与持续时间向量:
fig = plt.figure()
ax = fig.add_axes([0,0,1,1])
ax.plot(dur,in,color=)
解决方案
先试.reset_index()
,再用方法.tolist()
。像这样:
df_duration_means = df_duration_means.reset_index()
duration = df_duration_means.index.tolist()
interest = df_duration_means['Interest'].tolist()
loan_amount = df_duration_means['Loan amount'].tolist()
ltv = df_duration_means['LTV'].tolist()
然后,使用duration
, interest
, loan_amount
, 和ltv
作为 plotly 的输入
编辑:使用 plotly.express 有更简单的解决方案:
import plotly.express as px
df_duration_means = df_duration_means.reset_index()
fig = px.line(df_duration_means, x=df_duration_means.index, y=['Interest', 'Loan amount', 'LTV'])
推荐阅读
- javascript - 悬停时滚动-反应js
- flutter - 断言失败:布尔表达式不能为空:颤振
- reactjs - 如何遍历包含常量数组的文件
- javascript - 如何使用 ajax 处理分页中的页面链接?
- xcode - 如何从 appstoreconnect 获取 dSYM 文件?
- docker - 如何过滤“docker inspect”输出以便只显示某些标签:值对?
- ruby-on-rails - 从收藏中随机获取 9 张照片
- html - 当单击第一个 div 中的集合名称时,如何在第二个 div 中显示集合页面列表?(杰基尔)
- r - 在 R 中使用 dplyr 进行反向编码
- reactjs - 如何测试使用反应测试库渲染的反应组件的道具的价值