Dataframe是这样的

我想把那个行值提取到相同的数据中。
df["row"][0] values like{‘加速度’:0,‘距离’:0.917,‘能量_成本’:4.644,‘估计能量’:76.323,‘一半’:1,‘代谢_能量’:17.043,'pos_x':-27.14,'pos_y':50.03,‘速度’:3.67,‘视频_秒’:5.0},{‘加速度’:0,‘距离’:0.848,‘能量_成本’:4.647,“估计能量”:70.546,‘一半’:1,‘代谢能力’:15.753,'pos_x':-27.988,'pos_y':50.022,‘速度’:3.39,‘视频_秒’:5.25},{‘加速度’:0,‘距离’:0.848,‘能量_成本’:3.978,‘估计能量’:60.39,‘一半’:1,‘代谢动力’:13.485,'pos_x':-28.835,'pos_y':50.015,‘速度’:3.39,‘视频_秒’:5.5},{‘加速度’:0,‘距离’:0.848,‘能量_成本’:4.647,‘估计能量’:70.546,‘一半’:1,‘代谢_功率’:15.753,'pos_x':-29.682,'pos_y':50.008,“速度”:3.39,“视频秒”:5.75},{“加速度”:0,“距离”:0.848,“能源成本”:4.647,“估计能量”:70.546,“一半”:1,“代谢能力”:15.753,'pos_x':-30.53,'pos_y':50.0,‘速度’:3.39,‘视频_秒’:6.0},{‘加速度: 0.445,’距离‘:0.959,’能量_成本‘:4.647,’估计能量‘:79.805,’一半‘:1,’代谢_能量‘:17.82,'pos_x':-31.345,'pos_y':50.505,’速度‘:3.835,’视频_秒‘:6.25},{’加速度‘:0,’距离‘:0.959,’能量_成本‘:5.91,“估计能量”:101.505,‘一半’:1,‘代谢能力’:22.666,'pos_x':-32.16,'pos_y':51.01,‘速度’:3.835,‘视频_秒’:6.5},{‘加速度’:0.0,‘距离’:0.959,‘能量_成本’:4.647,‘估计能源’:79.805,‘一半’:1,“代谢能力”:17.82,'pos_x':-32.975,'pos_y':51.515,‘速度’:3.835,‘视频_秒’:6.75},{‘加速度’:0,‘距离’:0.959,‘能量_成本’:4.644,‘估计能量’:79.761,‘一半’:1,‘代谢_功率’:17.81,'pos_x':-33.79,‘'pos_y':52.02,’速度‘:3.835,’视频_秒‘:7}
想要的数据是像id,数字,acc,距离,.然后按视频秒排序。
我怎么能这么做?
发布于 2022-08-23 21:17:44
尝试:
from ast import literal_eval
# if not converted already, apply ast.literal_eval
df["row"] = df["row"].apply(literal_eval)
df = df.explode("row")
df = pd.concat([df, df.pop("row").apply(pd.Series)], axis=1).sort_values(
"video_second"
)
print(df)指纹:
id number acceleration distance energy_cost estimated_energy half metabolic_power pos_x pos_y speed video_second
0 340 6 0.000 0.917 4.644 76.323 1.0 17.043 -27.140 50.030 3.670 5.00
0 340 6 0.000 0.848 4.647 70.546 1.0 15.753 -27.988 50.022 3.390 5.25
0 340 6 0.000 0.848 3.978 60.390 1.0 13.485 -28.835 50.015 3.390 5.50
0 340 6 0.000 0.848 4.647 70.546 1.0 15.753 -29.682 50.008 3.390 5.75
0 340 6 0.000 0.848 4.647 70.546 1.0 15.753 -30.530 50.000 3.390 6.00
0 340 6 0.445 0.959 4.647 79.805 1.0 17.820 -31.345 50.505 3.835 6.25
0 340 6 0.000 0.959 5.910 101.505 1.0 22.666 -32.160 51.010 3.835 6.50
0 340 6 0.000 0.959 4.647 79.805 1.0 17.820 -32.975 51.515 3.835 6.75
0 340 6 0.000 0.959 4.644 79.761 1.0 17.810 -33.790 52.020 3.835 7.00https://stackoverflow.com/questions/73465087
复制相似问题