Python 在Pandas中处理复制数据
我试图用std偏差作为误差条绘制一些数据随时间的散点图。对于两个不同的样本A和B,每个时间点有三次测量Python 在Pandas中处理复制数据,python,pandas,Python,Pandas,我试图用std偏差作为误差条绘制一些数据随时间的散点图。对于两个不同的样本A和B,每个时间点有三次测量 Date A1 A2 A3 B1 B2 B3 1/1/17 4 5 6 2 3 4 1/2/17 6 7 8 5 6 4 因此,我导入的数据如下所示: import pandas as pd columns = ['Date', 'A1', 'A2', 'A3', 'B1', 'B2', 'B3'] dat = pd.read_csv('data', sep='\t', names=colu
Date A1 A2 A3 B1 B2 B3
1/1/17 4 5 6 2 3 4
1/2/17 6 7 8 5 6 4
因此,我导入的数据如下所示:
import pandas as pd
columns = ['Date', 'A1', 'A2', 'A3', 'B1', 'B2', 'B3']
dat = pd.read_csv('data', sep='\t', names=columns)
那么,我如何组合复制列,以便计算标准偏差,然后进行绘图?我在考虑重命名A和B列,使它们相同,然后可以合并?我必须承认,我没有真正得到你想要的,但我认为这很酷
- 转置,因为我想运行
/groupby
,但它尚未在列上实现agg
- 按列名的第一个字符分组,然后查找
和mean
std
- 使用它来绘制带有错误条的内容
或者相同的想法,但路径略有不同
d = df.T.groupby(lambda x: x[0]).agg(['mean', 'std']).stack(0).unstack(0)
d['mean'].plot.bar(yerr=d['std'])
否则,我们可以做一个单一的减少
df.groupby(lambda x: x[0], 1).mean()
A B
Date
1/1/17 5 3
1/2/17 7 5
您希望它们如何组合?除非你告诉我们你想要什么,否则我们不知道你想要什么…同意,你是不是要求把所有的A都放在一列,所有的B都放在另一列?还是你在问一些不同的问题?当然是@这正是我想要的,谢谢。
df.groupby(lambda x: x[0], 1).mean()
A B
Date
1/1/17 5 3
1/2/17 7 5