Dataframe из массива numpy без данных, становящихся индексом [duplicate]

NullPointerException s - исключения, возникающие при попытке использовать ссылку, которая указывает на отсутствие местоположения в памяти (null), как если бы она ссылалась на объект. Вызов метода по нулевой ссылке или попытка получить доступ к полю нулевой ссылки вызовет функцию NullPointerException. Они наиболее распространены, но другие способы перечислены на странице NullPointerException javadoc.

Вероятно, самый быстрый пример кода, который я мог бы придумать для иллюстрации NullPointerException, be:

public class Example {

    public static void main(String[] args) {
        Object obj = null;
        obj.hashCode();
    }

}

В первой строке внутри main я явно устанавливаю ссылку Object obj равной null. Это означает, что у меня есть ссылка, но она не указывает на какой-либо объект. После этого я пытаюсь обработать ссылку так, как если бы она указывала на объект, вызывая метод на нем. Это приводит к NullPointerException, потому что нет кода для выполнения в местоположении, на которое указывает ссылка.

(Это техничность, но я думаю, что она упоминает: ссылка, которая указывает на null, равна 't то же, что и указатель C, указывающий на недопустимую ячейку памяти. Нулевой указатель буквально не указывает на в любом месте , который отличается от указаний на местоположение, которое оказывается недопустимым.)

30
задан woshitom 29 September 2014 в 11:38
поделиться

4 ответа

Вместо создания 2 временных dfs вы можете просто передать их как параметры в файле dict с помощью конструктора DataFrame:

pd.DataFrame({'email':sf.index, 'list':sf.values})

Существует множество способов построения df, см. docs

55
ответ дан EdChum 20 August 2018 в 09:30
поделиться
  • 1
    еще один отличный вариант - конкат, если в вашей серии есть одинаковые оси pd.concat([sf.index, sf.values], axis=1) – Lauren 24 August 2017 в 20:30

Series_Name = pd.DataFrame (имя_серии)

-2
ответ дан Bhagabat Behera 20 August 2018 в 09:30
поделиться

to_frame ():

Начиная со следующей серии, df:

email
email1@email.com    A
email2@email.com    B
email3@email.com    C
dtype: int64

Я использую to_frame для преобразования ряда в DataFrame:

df = df.to_frame().reset_index()

    email               0
0   email1@email.com    A
1   email2@email.com    B
2   email3@email.com    C
3   email4@email.com    D

Теперь вам нужно только переименовать имя столбца и называть столбец индекса:

df = df.rename(columns= {0: 'list'})
df.index.name = 'index'

. Ваш DataFrame готов для дальнейшего анализа.

Обновление: я только что наткнулся на эту ссылку , где ответы на удивление похожи на мои.

26
ответ дан Community 20 August 2018 в 09:30
поделиться
  • 1
    series_obj.to_frame() работает! Я выводил этот тип класса <class 'pandas.core.frame.DataFrame'> – Victor John 15 February 2018 в 01:56
3
ответ дан A-B-B 31 October 2018 в 07:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: