【发布时间】:2016-06-12 05:25:48
【问题描述】:
我有一个如下所示的 pandas DataFrame:
Time Measurement
0 0 1
1 1 2
2 2 3
3 3 4
4 4 5
5 0 2
6 1 3
7 2 4
8 3 5
9 4 6
10 0 3
11 1 4
12 2 5
13 3 6
14 4 7
15 0 1
16 1 2
17 2 3
18 3 4
19 4 5
20 0 2
21 1 3
22 2 4
23 3 5
24 4 6
25 0 3
26 1 4
27 2 5
28 3 6
29 4 7
可以使用以下代码生成:
import pandas
time=[0,1,2,3,4]
repeat_1_conc_1=[1,2,3,4,5]
repeat_1_conc_2=[2,3,4,5,6]
repeat_1_conc_3=[3,4,5,6,7]
d1=pandas.DataFrame([time,repeat_1_conc_1]).transpose()
d2=pandas.DataFrame([time,repeat_1_conc_2]).transpose()
d3=pandas.DataFrame([time,repeat_1_conc_3]).transpose()
repeat_2_conc_1=[1,2,3,4,5]
repeat_2_conc_2=[2,3,4,5,6]
repeat_2_conc_3=[3,4,5,6,7]
d4=pandas.DataFrame([time,repeat_2_conc_1]).transpose()
d5=pandas.DataFrame([time,repeat_2_conc_2]).transpose()
d6=pandas.DataFrame([time,repeat_2_conc_3]).transpose()
df= pandas.concat([d1,d2,d3,d4,d5,d6]).reset_index()
df.drop('index',axis=1,inplace=True)
df.columns=['Time','Measurement']
print df
如果您查看代码,您会发现我在同一个 DataFrame 中有两个实验重复,它们应该在 df.iloc[:15] 处分开。此外,在每个实验中,我有 3 个子实验,可以将其视为剂量反应的起始条件,即第一个子实验以 1 开始,第二个子实验以 2 开始,第三个子实验以 3 开始。这些应该以索引间隔分开`len(time)',即 0-4,每个实验重复 5 个元素。有人可以告诉我将这些数据分成每个实验的单独时间过程测量的最佳方法吗?我不确定最好的数据结构是什么,但我只需要能够轻松访问每个实验重复的每个子实验的每个数据。也许有时像:
repeat1=
Time Measurement
0 0 1
1 1 2
2 2 3
3 3 4
4 4 5
5 0 2
6 1 3
7 2 4
8 3 5
9 4 6
10 0 3
11 1 4
12 2 5
13 3 6
14 4 7
Repeat 2=
Time Measurement
15 0 1
16 1 2
17 2 3
18 3 4
19 4 5
20 0 2
21 1 3
22 2 4
23 3 5
24 4 6
25 0 3
26 1 4
27 2 5
28 3 6
29 4 7
【问题讨论】:
-
什么是
repeat1和Repeat 2- 数据帧?或者你只是想打印你的 DF 以这种方式分隔它? -
我不知道放入这些数据的最佳数据结构。但标准是我需要能够轻松访问每次重复的每个起始条件(子实验)