Как заменить столбцы одного CSV на столбцы из другого CSV, используя панд

python pandas

76 просмотра

2 ответа

4 Репутация автора

Предположим, у меня есть два CSV

one.csv

1,2,3,4
5,6,7,8

two.csv

6,7,4,5
7,8,10,15

Я должен заменить последние два столбца из первого файла последними двумя столбцами второго файла, и выходные файлы должны быть

1,2,4,5
5,6,10,15
Автор: Brunda Reddy Источник Размещён: 18.07.2016 10:15

Ответы (2)


0 плюса

2169 Репутация автора

Это должно работать:

import pandas as pd
df1 = pd.read_csv(csv1,usecols=[1,2,3,4 5,6], names=[1,2,3,4 5,6] header=None)
df2 = pd.read_csv(csv2,usecols=[10,15], names=[10,15] header=None)

df = pd.concat([df1, df2], ignore_index=True)

РЕДАКТИРОВАТЬ: В ответ на ваш комментарий с измерениями, отличными от вопроса: загрузите оба кадра данных полностью, поместите последние два на первый, а затем используйте, df.ix[row slice, column slice]чтобы нарезать второй кадр данных (например:) df.ix[:,'b':], чтобы получить только последние [n] столбцы, которые вы хотите, объедините, используя, pd.concatи вы должны иметь желаемый результат

Автор: SerialDev Размещён: 18.07.2016 10:25

0 плюса

137826 Репутация автора

попробуй это:

In [10]: (pd.read_csv(fn1, header=None, usecols=[0,1])
   ....:    .join(pd.read_csv(fn2, header=None, usecols=[2,3])))
Out[10]:
   0  1   2   3
0  1  2   4   5
1  5  6  10  15

сохранить обратно в CSV:

In [11]: (pd.read_csv(fn1, header=None, usecols=[0,1])
   ....:    .join(pd.read_csv(fn2, header=None, usecols=[2,3]))
   ....:    .to_csv('c:/temp/result.csv', index=False, header=None)
   ....: )

Result.csv

1,2,4,5
5,6,10,15
Автор: MaxU Размещён: 18.07.2016 11:19
Вопросы из категории :
32x32