Объединить два файла CSV по горизонтали

1

Поэтому у меня есть два текстовых файла: "pt1.txt" и "pt2.txt",

Содержимое "pt1.txt":

Name,ICO,Max,USD_ROI
Bitcoin,0.0,19535.7,N/A
Ethereum,0.0,1389.18,N/A
Ripple,0.0,3.6491,N/A
Bitcoin Cash,0.0,4091.7,N/A
EOS,0.99,21.4637,2068.05%
Cardano,0.0,1.27977,N/A
Stellar,0.0,0.851652,N/A

Содержимое "pt2.txt":

BTC_ROI,ETH_ROI
N/A,N/A
N/A,N/A
N/A,N/A
N/A,N/A
N/A,N/A
-260.77%,-130.75%
N/A,N/A
N/A,N/A

Я хочу объединить "pt1.txt" и "pt2.txt", добавив содержимое "pt2.txt" в "pt1.txt",

Вот мой код:

import pandas as pd

f = open("pt1.txt","w+")
df = pd.read_csv("pt2.txt")
f.write(df["BTC_ROI"])
f.write(df["ETH_ROI"])

Я получил сообщение об ошибке:

TypeError: write() argument must be str, not Series

Как я могу изменить свой код, поэтому "pt1.txt" будет выглядеть следующим образом?

Name,ICO,Max,USD_ROI,BTC_ROI,ETH_ROI
Bitcoin,0.0,19535.7,N/A,N/A,N/A
Ethereum,0.0,1389.18,N/A,N/A,N/A
Ripple,0.0,3.6491,N/A,N/A,N/A
Bitcoin Cash,0.0,4091.7,N/A,N/A,N/A
EOS,0.99,21.4637,2068.05%,-260.77%,-130.75%
Cardano,0.0,1.27977,N/A,N/A,N/A
Stellar,0.0,0.851652,N/A,N/A,N/A
Теги:
pandas
concat

1 ответ

2
Лучший ответ

Вы пытаетесь добавить столбцы в существующую CSV. Самый простой способ сделать это - прочитать оба кадра в памяти, concat, а затем сбросить их.

df1 = pd.read_csv('pt1.txt')
df2 = pd.read_csv('pt2.txt')

(pd.concat([df1, df2], axis=1)
  .to_csv('pt2.txt', index=False, na_rep='N/A')
)

Это самая простая задача, если ваши данные достаточно малы.

  • 0
    @ j.doe crud, это плохо. Попробуй еще раз. Это должно работать сейчас.
  • 0
    это сработало, спасибо большое!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню