簡體   English   中英

Python - 使用 Pandas 在現有表中附加數據

[英]Python - append data in existing table using pandas

          00          01          02          03          04
    1  (value00)   (value01)   (value02)   (value03)   (value04)
    .      .
    .      .
    .      .
  1003 (value00)   (value01)   (value02)   (value03)   (value04)

我有一個包含 5 列的文本文件,如上例所示。 我需要使用名為 Pandas 的 Python 庫將數據附加到此文本文件。 這個文件最后需要的大約行數是 1003。對不起,如果你不能理解我的解釋,我是 Pandas 的新手。

例如:

          00          01          02          03          04
1        4053        4665        1003        5823        5646
2        5656        5525        4561        4654        4568
3        4656        4652        4785        4987        2354
4        3262        2335        2154        5654        4658
5        5674        6584        4562        4568        5486
[...]   [...]       [...]       [...]       [...]       [...]
1003     3543        1351        3215        4532        1315

我該怎么做?

我會使用 df.loc[row] 來做,它可以很容易地在循環內使用。

import pandas as pd

df = pd.DataFrame(columns=[str(i).zfill(2) for i in range(5)])
df.loc[0] = range(5) # add row 
df.loc[1] = range(5) # add row

for i in range(len(df),len(df)+2):
    df.loc[i] = range(5) # add rows to end by starting at len(df)

df

退貨

    00  01  02  03  04
0   0.0 1.0 2.0 3.0 4.0
1   0.0 1.0 2.0 3.0 4.0
2   0.0 1.0 2.0 3.0 4.0
3   0.0 1.0 2.0 3.0 4.0

將數據添加到數據框中的列。 這會起作用。 我認為您正在尋找更具程序性的東西。 請注意,我們所有的數據都需要具有相同的大小,因此像這樣附加很乏味,但它會起作用。

import pandas as pd
df = pd.DataFrame({'00': ['value1', 'value2', 'value3'],
              '01': ['value4', 'value5', 'value6'],
              '02': ['value7', 'value8', 'value9'],
              '03': ['value10', 'value11', 'value12'],
              '04': ['value13', 'value14', 'value15']})

In[2]: df

Out[2]:
    00      01      02      03      04
0   value1  value4  value7  value10 value13
1   value2  value5  value8  value11 value14
2   value3  value6  value9  value12 value15

如果它們的形狀不同,您可能會看到此錯誤ValueError: arrays must all be same length

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM