#python #excel
#python #excel
Вопрос:
Как изменить порядок CSV?
Я пытаюсь преобразовать этот набор данных в годы, чтобы:
country1 | price | year1
country2 | price | year1
country1 | price | year2
country2 | price | year2
становится:
| year1 | year2
country1 | price | price
country2 | price | price
Как я могу это сделать?
Комментарии:
1. пакет python pandas позволяет вам манипулировать данными: читать csv, обрабатывать его и сохранять как csv. Возможно, вы захотите прочитать о
groupby
команде для ваших нужд
Ответ №1:
Попробуйте (я использовал данные из вашей ссылки и предположил, какие столбцы вам нужны):
import pandas as pd
df = pd.read_csv('data.csv',
usecols=['name', 'local_price', 'date'],
index_col='name')
df.sort_values(by=['name', 'date'], inplace=True)
df = df.pivot(columns='date', values='local_price')
df.to_csv('data_out.csv')
Ответ №2:
Попробуйте df.pivot()
:
df.pivot(index='Country', columns='Year', values='Price')
Ответ №3:
Вы можете сделать это с помощью сводной таблицы pandas:
import pandas as pd
pd.pivot_table(index='Country', columns='Year', values='Price')
Вывод:
year year1 year2
country
country1 price price
country2 price price