我有一个包含1174697行的时间点数据集和一个包含876923行的数据帧。数据帧由以下列组成:时间、目标、类型。你知道吗
我想迭代数据帧,在每一行检查“时间”和数据集中的时间点,找到数据集中所有与“时间”值相等的时间点,然后在这些时间点之间选择“目标”第1个。例如,如果有5个项目的“时间”值相同,而目标值等于3,则选择从Begging开始的第4个项目,因为目标值的作用类似于索引。你知道吗
我会把代码放在这里。问题是在两个循环上迭代要花很长时间。我想知道怎样才能提高表现。你知道吗
timepoint_ds = file['/timepoints']
df = track_df.loc[:, ['time', 'target', 'type']]
label_imgindex_df = pd.DataFrame()
for index, row in df.iterrows():
print("---Row--------------:",index)
hdf_index = row["target"]
label = row["type"]
time= row["time"]
image_index_list, label_list, time_target =[], [], []
for i, value in enumerate(timepoint_ds):
if value == time:
image_index_list.append(i)
label_list.append(label)
label_index_df = pd.DataFrame({'index':image_index_list[hdf_index] , 'label': label} , index= [i])
with open('/home/usr/label_imgindex_df.pkl', 'wb') as f:
pk.dump(label_imgindex_df, f)
目前没有回答
相关问题 更多 >
编程相关推荐