глубокое копирование кадра данных Pandas в список (включая индекс) - PullRequest
0 голосов
/ 20 мая 2018

У меня есть padas dataframe df

    column1
2     1
3     2
8     3
10    4
45    5

Я хочу преобразовать этот столбец 1 pandas dataframe в список x, и я также хочу, чтобы индекс также был индексом списка

, так что если я вызову x [2]

, он должен вернуть 1

Я пытался

x = df['column1'].values

Но индекс списка получил сброс.

Я ищу ответ, буду признателен за ваше время и усилия, чтобы помочь мне.

1 Ответ

0 голосов
/ 20 мая 2018

Список Python имеет непрерывный индекс, он не может иметь дыр в диапазоне индекса.

Единственный способ достичь вашей цели - заполнить исходную серию nan для каждой лунки, создавнепрерывный индекс:

In [29]: df.column1.reindex(np.arange(df.index.max()+1)).tolist()
Out[29]: 
[nan,
 nan,
 1.0,
 2.0,
 nan,
 nan,
 nan,
 nan,
 3.0,
 nan,
 4.0,
 nan,
 nan,
 nan,
 nan,
 nan,
 ....

Если вы можете использовать dict, тогда предпочтителен следующий подход:

In [35]: df.column1.to_dict()
Out[35]: {2: 1, 3: 2, 8: 3, 10: 4, 45: 5}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...