дополнительный тип данных в конце массива numpy после применения метода dataframe - PullRequest
0 голосов
/ 10 февраля 2019

Я применяю следующий код к массиву numpy:

mad_array = []
for j in data:
    df = pd.DataFrame(j)
    print(j)
    mad_array.append(df.mad())

print(mad_array) 

Выходной массив выглядит следующим образом:

[0    10.0   dtype: float64, 
 0    18.875 dtype: float64, 
 0    18.375 dtype: float64]

Есть ли способ убрать лишние0 (не уверен, откуда это исходит) и datatype свойство, которое добавляется к выводу, поэтому мой выходной массив выглядит примерно так:

[10.0 18.875 18.375]

I'mне уверен, что это поведение из numpy или DataFrame.

Ответы [ 2 ]

0 голосов
/ 10 февраля 2019

Вы можете использовать df.mad().values, чтобы вернуться к значениям серии / фрейма данных.Нули - это индекс индекса серии / dataframe, а dtype - строковое представление серии / dataframe.Преобразовав возвращенный массив данных / серию из метода mad () с помощью атрибута values, вы только добавляете часть значений в структуру.

0 голосов
/ 10 февраля 2019

Как предлагается в комментарии, используйте

df.mad().values

, чтобы избавиться от dataType и 0 index

Ваш массив mad_array теперь должен выглядеть следующим образом:

[array([10.]), array([18.875]), array([18.375])]

Выберите первый индекс каждого массива следующим образом

(df.mad().values)[0]

Результат

[10.0, 18.875, 18.375]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...