我有一个具有500列和x行的数据框。现在,我有一个向量t_1
和一个向量t_2
。向量t_1
表示事件的开始,并且可以包含1个或多个值,而t_2
是事件的结束。它们都指示数据框中行的位置。
示例:
t1=[4202 6453]
t2=[6203 6492]
我现在想将数据框拆分为多个部分,并将其保存为两个不同的数据框。第4202至6203行是数据帧1,第6453至6492行是数据帧2。 这将是整个数据框:
A B C D
1 5 2 3 4
.. . . . .
4202 3 4 2 1
4203 2 1 2 2
.. . . . .
6203 1 2 3 1
.. . . . .
6453 5 1 4 3
.. . . . .
6492 1 2 3 4
,这应该是输出: 数据框1:
A B C D
4202 3 4 2 1
.. . . . .
6203 1 2 3 1
和数据框2:
A B C D
6453 5 1 4 3
.. . . . .
6492 1 2 3 4
谢谢你, R
答案 0 :(得分:1)
我相信您需要list comprehension
和loc
的{{1}}和zip
列表:
DataFrame
示例:
t1=[4202, 6453]
t2=[6203, 6492]
dfs = [df.loc[i:j] for i, j in zip(t1, t2)]
print (dfs[0])
print (dfs[1])
np.random.seed(142)
df = pd.DataFrame({'column':np.random.rand(8)})
print (df)
column
0 0.902062
1 0.557808
2 0.655985
3 0.832471
4 0.199884
5 0.127254
6 0.771439
7 0.432289