У меня есть огромный файл данных, который выглядит следующим образом.Я указал только несколько параметров в столбце «Имя».У меня есть 24 из них, которые продолжают повторяться.
Name Value Date Time
0 FAN_RFB 1 2018-04-07 02:34:43
1 KW_TOTAL 186 2018-04-08 23:59:58
2 ME_POW_1 8618 2018-04-08 23:59:56
3 ME_POW_2 8315 2018-04-08 23:59:56
4 FAN_RFB 1 2018-04-07 02:34:43
5 KW_TOTAL 185 2018-04-09 00:00:07
6 ME_POW_1 8467 2018-04-09 00:00:09
7 ME_POW_2 8350 2018-04-09 00:00:09
8 FAN_RFB 1 2018-04-07 02:34:43
9 KW_TOTAL 182 2018-04-09 00:00:15
10 ME_POW_1 8783 2018-04-09 00:00:16
11 ME_POW_2 8422 2018-04-09 00:00:16
12 FAN_RFB 1 2018-04-07 02:34:43
13 KW_TOTAL 184 2018-04-09 00:00:26
14 ME_POW_1 8545 2018-04-09 00:00:28
15 ME_POW_2 8370 2018-04-09 00:00:28
Есть две вещи, которые я хочу сделать с этим:
Правильная дата и время для каждого набора - это запись, записанная для ME_POW_1.Поэтому для индекса от 0 до 3 я хочу исправить дату и время для всех с данными и временем для ME_POW_1, и я хочу сделать это для всех данных.
Именав столбце «Имя» следует поворачивать к отдельным столбцам.Желаемый вывод:
Дата Время FAN_RFB KW_TOTAL ME_POW_1 ME_POW_2 2018-04-08 23:59:56 1 186 8618 8315 2018-04-09 00:00:09 1 185 8467 8350 2018-04-0900:00:16 1 182 8783 8422 2018-04-09 00:00:28 1 184 8545 8370
Я думаю, что второе возможно при использовании pd.pivot (index =«дата», столбцы = «имя», значения = «значения»).Как только я смогу получить одинаковые даты наборов, я могу использовать этот фрагмент кода для получения желаемого результата:
raw=pd.read_csv('example.csv', parse_dates=True, usecols=[0,1,2,3])
raw['Date']=pd.to_datetime(raw['Date']+''+raw['Time'])
raw=raw.drop(['Time'], axis=1)
raw1=raw.pivot(index='Date', columns='Name', values='Value')
Но я понятия не имею, как выполнить первое задание, чтобы изменить дату каждогоустановить согласно дате и времени ME_POW_1.Может ли кто-нибудь, пожалуйста, вести меня?