Объект DataFrame лучше всего представлять себе в виде обычной таблицы и это правильно, ведь DataFrame является табличной структурой данных. В любой таблице всегда присутствуют строки и столбцы. Столбцами в объекте DataFrame выступают объекты Series, строки которых являются их непосредственными элементами.

Для создания DataFrame можно использовать одноименный конструктор и словарь Python.

In [1]:
import pandas as pd
In [2]:
df = pd.DataFrame({
    'country': ['France', 'USA', 'Ukraine'],
    'capital': ['Paris', 'Washington', 'Kiev'],
    'population': [66.99, 328.2, 41.98]
})
df
Out[2]:
country capital population
0 France Paris 66.99
1 USA Washington 328.20
2 Ukraine Kiev 41.98
In [3]:
df2 = pd.DataFrame({
    'country': ['France', 'USA', 'Ukraine'],
    'capital': ['Paris', 'Washington', 'Kiev'],
    'population': [66.99, 328.2, 41.98]
}, index=['FR', 'US', 'UA'])
df2
Out[3]:
country capital population
FR France Paris 66.99
US USA Washington 328.20
UA Ukraine Kiev 41.98
In [4]:
df.index
Out[4]:
RangeIndex(start=0, stop=3, step=1)
In [5]:
df.index = ['FR', 'US', 'UA']
In [6]:
df.index
Out[6]:
Index(['FR', 'US', 'UA'], dtype='object')
In [7]:
df
Out[7]:
country capital population
FR France Paris 66.99
US USA Washington 328.20
UA Ukraine Kiev 41.98

Варианты получения значений

In [9]:
df['capital']['US']
Out[9]:
'Washington'
In [10]:
df.capital.US
Out[10]:
'Washington'
In [12]:
df['capital'][1]
Out[12]:
'Washington'
In [14]:
df.at['US', 'capital']
Out[14]:
'Washington'
In [16]:
df.iat[1, 1]
Out[16]:
'Washington'
In [17]:
df.loc['US']
Out[17]:
country              USA
capital       Washington
population         328.2
Name: US, dtype: object
In [18]:
df.loc['US', 'capital']
Out[18]:
'Washington'
In [19]:
df.iloc[1]
Out[19]:
country              USA
capital       Washington
population         328.2
Name: US, dtype: object
In [20]:
df.iloc[1, 1]
Out[20]:
'Washington'
In [21]:
df.columns
Out[21]:
Index(['country', 'capital', 'population'], dtype='object')
In [ ]: