Создание двух массивов из серии в Python - PullRequest
0 голосов
/ 11 октября 2019

У меня есть серия (сохраненная как серия в моем коде), и я хочу сохранить ее значения в двух разных массивах, используя python. Первые шесть значений я хочу сохранить в массиве с именем x, где:

series[0] = x[0,0], series[1] = x[0,1], series[2] = x[0,2], series[3] = x[0,3], series[4] = x[0,4], series[5] = x[0,5], series[6] = x[0,6].

Теперь переключитесь на series[7] = y[0]. Затем повторите и создайте новую строку в x: series[8] = x[1,0], series[9] = x[1,1], series[10] = x[1,2], series[11] = x[1,3], series[12] = x[1,4], series[13] = x[1,5], series[14] = x[1,6]. Теперь переключитесь на series[14] = y[1] и продолжайте.

Мне удалось только прочитать файл .csv и преобразовать его из кадра данных в серию. Я думаю, что эта проблема может быть решена с помощью вложенных циклов for, но не смог понять это. Спасибо за вашу помощь!

Python

import pandas as pd
import numpy as np 
import matplotlib.pyplot as plt
import matplotlib.dates as mdates

df = pd.read_csv("Data.csv")

series = df['totalBuildingEnergykW_EVERLY_HALL_BUILDING_ENERGY_EnergyMetric']

Series Snippet

1 Ответ

1 голос
/ 11 октября 2019

Лучше использовать функцию df ['Column_name']. Tolist () для получения данных из столбца информационного кадра в список, поскольку это дает вам данные в формате списка.

import pandas as pd
import numpy as np 
df = pd.read_csv("File.csv")
L = df['column_name'].tolist() 
w, h = 6, 2;
Arr = [[0 for x in range(w)] for y in range(h)] 
for i,item in enumerate(L):
    if i<6 :
         Arr[0][i] = item
    else :
         Arr[1][i-6] = item
...