首页 > 解决方案 > Pandas:用数据片段填充新的 df / 创建 epoch

问题描述

我正在尝试从我的 df s28 创建瞳孔扩张数据的时代。具体来说,我想将它们保存在仅包含 s28 列“PupilRight”的新 df (s28EP) 中,并且仅在 1000 行 (1000ms) 的范围内,从 s28 列“face_starts”中的条目“face_start”开始。在这个数据集中,“face_start”出现了 17 次,所以我相应地创建了零填充的 s28EP。

我尝试了什么:

rows = []
for i in range(1000):
     rows.append([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])

s28EP = pd.DataFrame(rows, columns=['EP1', 'EP2', 'EP3', 'EP4', 'EP5', 'EP6', 'EP7', 'EP8', 'EP9', 'EP10', 'EP11', 'EP12', 'EP13', 'EP14', 'EP15', 'EP16', 'EP17'])

直到这里一切正常。但这不会:

i=1000;

for row in s28:
     if s28.iloc[10]['face_starts'] == 'face_start': 
        for col in s28EP:            
            s28EP[::col] = s28.loc[(s28[s28[row:'PupilRight']:s28[row+i:'PupilRight']])]


#OTHER IF VARIATIONS I TRIED:
#    if s28[row, 4] == 'face_start':
#     if s28.loc[s28['face_starts'].isin('face_start')]
#     if s28.loc[s28['face_starts'] == 'face_start']:

#OTHER THINGS I TRIED FOR INCLUDING
#            s28EP['EPOCH+col'] = s28.PupilRight.loc[row:row+1000]
#            s28EP['EPOCH'+col] = s28[(s28[row, 'PupilRight'] : s28[row+1000, 'PupilRight'])]

没有错误消息 - 表只是保持为空。

提前致谢,祝您有美好的一天!

蒙蒙三世

标签: pythonpandasdata-analysiseye-tracking

解决方案


推荐阅读