绘制python两列的总和



我有一个带有2列的数据框,即均值和SD。

有什么办法可以绘制这两列的总和?

我不想创建第三列,但我想将以下列表绘制为一列。

在r世界中,使用ggplot您可以使用dplyr并做类似的操作:

df %>% mutate(sumsd = sum+sd) %>% ggplot(.)等,而无需将数据保存到列中。

要绘制的数据需要在内存中;数据框列是实现这一目标的货物。假设以下数据

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
a = np.random.rand(100,20)
df = pd.DataFrame({"mean" : np.mean(a,1),
                    "std" :  np.std(a,1)})

您现在可以使用pandas绘制包装纸。只需添加两个列即可。

(df["mean"]+df["std"]).plot()

您也可以总结数据框,

df.sum(axis=1).plot()

,或者如果您有更多列,

df[["mean","std"]].sum(axis=1).plot()

当然可以使用matplotlib直接完成同样的操作,

# case 1
plt.plot(df.index, (df["mean"]+df["std"]))
# case 2
plt.plot(df.index, df.sum(axis=1))
# case 3
plt.plot(df.index, df[["mean","std"]].sum(axis=1))

最新更新