【发布时间】:2021-02-05 02:34:27
【问题描述】:
我有一个如下所示的数据框:
X Z participantNum obsScenario startPos targetPos
16000 -16.0 -5.0 6950203 2 2 3
16001 -16.0 -5.0 6950203 2 2 3
16002 -16.0 -5.0 6950203 2 2 3
16003 -16.0 -5.0 6950203 2 2 3
16004 -16.0 -5.0 6950203 2 2 3
16005 -16.0 -5.0 6950203 2 2 3
16006 -16.0 -5.0 6950203 2 2 3
16007 -16.0 -5.0 6950203 2 2 3
16008 -16.0 -5.0 6950203 2 2 3
16009 -16.0 -5.0 6950203 2 2 3
我正在尝试将函数应用于返回 3 个输出的“X”和“Z”列。我想将这些输出保存到数据框中。我需要将函数应用于分组数据框。
我尝试了几种方法,使用如下:
def mean_confidence_interval(data, confidence=0.95):
a = 1.0*np.array(data)
n = len(a)
m, se = np.mean(a), scipy.stats.sem(a)
h = se * scp.stats.t._ppf((1+confidence)/2., n-1)
return m, m+h, m-h
allDataF['mean_ci'] = allDataF.groupby(['obsScenario', 'startPos', 'targetPos'])['X', 'Z'].apply(mean_confidence_interval)
但我得到一个错误: TypeError: 插入列的索引与框架索引不兼容
【问题讨论】:
标签: python pandas dataframe pandas-groupby