У меня есть такая таблица:
Locality 2005 2006 2007 2008 2009
ABBOTSFORD 427000 448000 602500 600000 638500
ABERFELDIE 534000 600000 735000 710000 775000
AIREYS INLET459000 440000 430000 517500 512500
Я не хочу вручную менять местами столбец со строкой. Можно ли использовать панды для чтения данных в список следующим образом:
data['ABBOTSFORD']=[427000,448000,602500,600000,638500]
data['ABERFELDIE']=[534000,600000,735000,710000,775000]
data['AIREYS INLET']=[459000,440000,430000,517500,512500]
Ответы:
Да, с помощью set_index вы можете создать
Locality
индекс строки.Если
inplace=True
неset_index
указан, в результате возвращает измененный фрейм данных.Пример:
источник
Вы можете изменить индекс, как уже объяснялось, используя
set_index
. Вам не нужно вручную менять местами строки со столбцами,data.T
в pandas есть метод transpose ( ), который сделает это за вас:затем вы можете получить значения столбца фрейма данных и преобразовать их в список:
источник
Вы можете установить индекс столбца, используя параметр index_col, доступный при чтении из электронной таблицы в Pandas.
Вот мое решение:
Во-первых, импортируйте панды как pd:
import pandas as pd
Прочтите имя файла с помощью pd.read_excel () (если у вас есть данные в электронной таблице) и установите для индекса значение «Locality», указав параметр index_col.
df = pd.read_excel('testexcel.xlsx', index_col=0)
На этом этапе, если вы получите ошибку «нет модуля с именем xlrd», установите его, используя
pip install xlrd
.Для визуального осмотра прочтите фрейм данных, с помощью
df.head()
которого будет напечатан следующий выводТеперь вы можете получить значения желаемых столбцов фрейма данных и распечатать их.
источник