繁体   English   中英

如何遍历数据框中的行,并为每一行剪切每 3 个值并垂直堆叠这些值?

[英]How can I iterate over rows in a dataframe, and for each row, cut every 3 values and stack the values vertically?

我有一个巨大的数据框,它有 100 行和 126900 列。 此数据框中的每一行代表车辆的一次公路旅行。 这些列是这样重复的:经度、纬度、时间戳、经度、纬度、时间戳、经度、纬度、时间戳等。每一行显示车辆在每一秒内的一系列即时位置。 现在对于每一行(每次旅行),我想拆分重复的列并垂直堆叠值。 所以转换后的数据框应该是一个 3 列的数据框。

对不起,我是 Stackoverflow 的新手,不知道如何插入这样的表格。 请在此处查看屏幕截图

我正在考虑使用带有 iterrow() 方法的双 for 循环,如下所示:

对于索引,df.iterrows() 中的行:对于范围内的 i(len(df)):

但我被困在这里,不知道下一步该怎么做。 似乎在巨大的数据框中循环遍历行/列通常可能是一种不好的做法。 有人可以帮我解决这个问题吗?

尝试这个:

new_df = pd.DataFrame()
for c in range (0, len(df.columns)-1, 3):
    new_df = pd.concat([new_df, df[df.columns[c:3]]])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM