У меня есть рамка данных pandas со столбцом из списков.
Цель состоит в том, чтобы найти мин каждого списка в строке (эффективным способом).Как получить минимальное значение списка строк в кадре данных pandas
E.g.
import pandas as pd
df = pd.DataFrame(columns=['Lists', 'Min'])
df['Lists'] = [ [1,2,3], [4,5,6], [7,8,9] ]
print(df)
Цель является Min
колонка:
Lists Min
0 [1, 2, 3] 1
1 [4, 5, 6] 4
2 [7, 8, 9] 7
Спасибо заранее,
Гил
Поскольку ваши 'pandas' структур данных с помощью' object' DTYPE, вы убиваете эффективность. –
@ juanpa.arrivillaga это результат этого алгоритма 'df [" b "] = np.array (map (list, [df [" a "]. Shift (x) для x в диапазоне (1,4)])). T.tolist() '- см. [Http://stackoverflow.com/questions/37967824/how-to-add-a-column-to-a-pandas-dataframe-made-of-arrays-of- -н-предшествующее-Valu]. Есть ли способ ускорить работу? – Gilberto
Проблема в том, что вы помещаете списки в свой 'DataFrame', создавая его из dtype' object'. Dtype наследуется для базовой структуры данных numpy, а типы d объектов - медленные. Это не алгоритм, это ваша структура данных. –