首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将数据拆分为每10个实例,并与新的数据帧连接

将数据拆分为每10个实例,并与新的数据帧连接
EN

Stack Overflow用户
提问于 2020-01-29 12:18:46
回答 2查看 56关注 0票数 0

我有一个DataFrame =

代码语言:javascript
复制
Lat    Lon     COG  Sog  status
16.23  23.92   20   14     1004

数据集长度为540x5

现在我需要将数据从行拆分到row9,即10x5,并存储到新的DataFrame中。接下来,将数据从row1拆分到row10,即s1,将下一个数据从row2拆分到row11,即s2,最多迭代540次。然后连接所有的DataFrames并存储到一个新的DataFrame中。

EN

回答 2

Stack Overflow用户

发布于 2020-01-29 12:33:11

您可以尝试以下操作:

设置:

代码语言:javascript
复制
np.random.seed(123)
df = pd.DataFrame(np.random.randint(0,100,(20,4)),columns=list('ABCD'))

使用列表理解,我们得到如下索引:

代码语言:javascript
复制
[(a,b) for a, b in zip(df.index,df.index[10:])]
#[(0, 10), (1, 11), (2, 12), (3, 13), (4, 14), 
#(5, 15), (6, 16), (7, 17), (8, 18), (9, 19)]

同样,只需传递df.iloc下的索引,然后连接:

代码语言:javascript
复制
win = 10 #change the window as required 
final = pd.concat([df.iloc[a:b] for a, b in zip(df.index,df.index[win:])],sort=False)
print(final)
票数 0
EN

Stack Overflow用户

发布于 2020-01-29 13:36:04

试试这个:

代码语言:javascript
复制
data_lines = your_data.splitlines() #this create 540 line 5 columns

如果您想拆分线路

代码语言:javascript
复制
split_data_line = data_lines[0]

如果仅打印状态,请尝试以下代码:

代码语言:javascript
复制
for line in data_lines
    print("status :{}".format(line.split()[-1]))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59960413

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档