在固定位置后在熊猫中追加行

时间:2018-07-27 14:09:22

标签: python pandas

我有一个很大的csv文件,其列类似datepatient_idtime。根据某些条件,我在数据框中得到了特定的行-

df4=df3.loc[(df3['identity']==ID) & (df3['Date'] == date) & (df3['Time'] ==matched_time )]

现在我有另一个没有特定行数的数据框,现在我想创建一个新数据框,其中包含我获得的df4行之后的所有行,直到第二个数据框的所有行都结束了。

示例-

111_&   14436   16025   6   433050  11/1/2013   13:32:30
111_&   14437   16026   6   433080  11/1/2013   13:33:00
111_&   14438   16027   6   433110  11/1/2013   13:33:30
111_&   14439   16028   6   433140  11/1/2013   13:34:00
111_&   14440   16029   6   433170  11/1/2013   13:34:30
111_&   14441   16030   6   433200  11/1/2013   13:35:00
111_&   14442   16031   6   433230  11/1/2013   13:35:30
111_&   14443   16032   6   433260  11/1/2013   13:36:00
111_&   14444   16033   6   433290  11/1/2013   13:36:30
111_&   14445   16034   6   433320  11/1/2013   13:37:00

现在根据某种条件,我得到了111_& 14440 16029 6 433170 11/1/2013 13:34:30

现在我想生成一个新的数据框,该数据框的行数与第二个数据框的行数相同(可以说它有4行) 然后变成-

111_&   14440   16029   6   433170  11/1/2013   13:34:30
111_&   14441   16030   6   433200  11/1/2013   13:35:00
111_&   14442   16031   6   433230  11/1/2013   13:35:30
111_&   14443   16032   6   433260  11/1/2013   13:36:00

1 个答案:

答案 0 :(得分:0)

# note this just takes the first index, you may want to check that your condition
# returns a unique row, like:
# assert df3.loc[(df3['identity'] == ID) & (df3['Date'] == date) & (df3['Time'] == matched_time)].shape[0] == 1

idx = df3.loc[(df3['identity'] == ID) & (df3['Date'] == date) & (df3['Time'] == matched_time)].index.item()
result = df3[idx:]