Как извлечь значения из столбца x в pandas df, где столбец y в df == list (i) - PullRequest
1 голос
/ 02 апреля 2020

Извиняюсь, если что-то подобное спрашивалось ранее.

У меня есть задача, где мне нужна функция, которая получает список unix раз и pandas df. ​​

У pandas df есть столбец для unix времени, столбец для широты и столбец для долготы.

Мне нужно извлечь широту из df, где время df unix соответствует unix раз в моем списке я перехожу к функции.

Пока у меня есть:

`def nl_lat_array (pandas_df, unixtime_list):

lat = dict()

data = pandas_df




for x, row in data.iterrows():

        if data[data['DateTime_Unix']] == i in unixtime_list:
            lat[i] = data[data['Latitude']] 



v=list(lat.values())

nl_lat_array = np.array(v)

return nl_lat_array

Это приводит к следующей ошибке:

KeyError: «Ни один из [Float64Index ([+1585403852,468, 1585403852,518, +1585403852,568, 1585403852,618, \ п 1585403852,668, +1585403852,718, 1585403852,768, 1585403852,818, \ п +1585403852,868, 1585403852,918 \ п ... \ п 1585508348,524, +1585508348,574, +1585508348,624, +1585508348,674, \ п 1585508348,724, 1585508348.774, 1585508348.824, 1585508348.874, \ n 1585508348.924, 1585508348.974], \ n dtype = 'float64', length = 2089945)] находятся в [столбцы] "

Однако эти значения в массиве pandas существуют в списке, который я передаю.

Любая помощь будет принята с благодарностью.

Ответы [ 2 ]

0 голосов
/ 02 апреля 2020
import pandas as pd
data = pd.DataFrame([[1,4,7],[2,5,8],[3,6,9]])
data.columns = ['time', 'lat', 'long']
time_list = [1,2]
d = data[data['time'].isin(time_list)]['lat'].values
# [4, 5]
0 голосов
/ 02 апреля 2020

Вы можете сделать что-то вроде этого.

filtered_data = data[data['DateTime_Unix'].isin(unixtime_list)]
filtered_data['Latitude'].values()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...