In [1]:
import pandas as pd

In [2]:
df = pd.read_csv('data/src/sample_pandas_normal.csv', index_col=0)
print(df)


         age state  point
name                     
Alice     24    NY     64
Bob       42    CA     92
Charlie   18    CA     70
Dave      68    TX     70
Ellen     24    CA     88
Frank     30    NY     57

In [3]:
print(df.index.values)


['Alice' 'Bob' 'Charlie' 'Dave' 'Ellen' 'Frank']

In [4]:
print(df.columns.values)


['age' 'state' 'point']

In [5]:
print(df.at['Bob', 'age'])
print(df.at['Dave', 'state'])


42
TX

In [6]:
df.at['Bob', 'age'] = 60
print(df.at['Bob', 'age'])


60

In [7]:
print(df.iat[1, 0])
print(df.iat[3, 1])


60
TX

In [8]:
df.iat[1, 0] = 42
print(df.iat[1, 0])


42

In [9]:
print(df.loc['Bob', 'age'])
print(df.iloc[3, 1])


42
TX

In [10]:
df.loc['Bob', 'age'] = 60
print(df.loc['Bob', 'age'])


60

In [11]:
df.iloc[1, 0] = 42
print(df.iloc[1, 0])


42

In [12]:
print(df.loc['Bob':'Dave', 'age'])
print(type(df.loc['Bob':'Dave', 'age']))


name
Bob        42
Charlie    18
Dave       68
Name: age, dtype: int64
<class 'pandas.core.series.Series'>

In [13]:
print(df.loc[:'Dave', ['age', 'point']])
print(type(df.loc[:'Dave', 'age':'point']))


         age  point
name               
Alice     24     64
Bob       42     92
Charlie   18     70
Dave      68     70
<class 'pandas.core.frame.DataFrame'>

In [14]:
print(df.iloc[:3, [0, 2]])
print(type(df.iloc[:3, [0, 2]]))


         age  point
name               
Alice     24     64
Bob       42     92
Charlie   18     70
<class 'pandas.core.frame.DataFrame'>

In [15]:
print(df.iloc[::2, 0])
print(type(df.iloc[::2, 0]))


name
Alice      24
Charlie    18
Ellen      24
Name: age, dtype: int64
<class 'pandas.core.series.Series'>

In [16]:
print(df.iloc[1::2, 0])
print(type(df.iloc[1::2, 0]))


name
Bob      42
Dave     68
Frank    30
Name: age, dtype: int64
<class 'pandas.core.series.Series'>

In [17]:
df.loc['Bob':'Dave', 'age'] = [20, 30, 40]
print(df.loc['Bob':'Dave', 'age'])


name
Bob        20
Charlie    30
Dave       40
Name: age, dtype: int64

In [18]:
print(df['Bob':'Ellen'])


         age state  point
name                     
Bob       20    CA     92
Charlie   30    CA     70
Dave      40    TX     70
Ellen     24    CA     88

In [19]:
print(df[:3])


         age state  point
name                     
Alice     24    NY     64
Bob       20    CA     92
Charlie   30    CA     70

In [20]:
print(df['age'])


name
Alice      24
Bob        20
Charlie    30
Dave       40
Ellen      24
Frank      30
Name: age, dtype: int64

In [21]:
print(df[['age', 'point']])


         age  point
name               
Alice     24     64
Bob       20     92
Charlie   30     70
Dave      40     70
Ellen     24     88
Frank     30     57

In [22]:
print(df.loc['Bob'])
print(type(df.loc['Bob']))


age      20
state    CA
point    92
Name: Bob, dtype: object
<class 'pandas.core.series.Series'>

In [23]:
print(df.iloc[[1, 4]])
print(type(df.iloc[[1, 4]]))


       age state  point
name                   
Bob     20    CA     92
Ellen   24    CA     88
<class 'pandas.core.frame.DataFrame'>

In [24]:
print(df.loc[:, 'age':'point'])
print(type(df.loc[:, 'age':'point']))


         age state  point
name                     
Alice     24    NY     64
Bob       20    CA     92
Charlie   30    CA     70
Dave      40    TX     70
Ellen     24    CA     88
Frank     30    NY     57
<class 'pandas.core.frame.DataFrame'>

In [25]:
print(df.iloc[:, [0, 2]])
print(type(df.iloc[:, [0, 2]]))


         age  point
name               
Alice     24     64
Bob       20     92
Charlie   30     70
Dave      40     70
Ellen     24     88
Frank     30     57
<class 'pandas.core.frame.DataFrame'>

In [26]:
df_state = pd.read_csv('data/src/sample_pandas_normal.csv', index_col=2)
print(df_state)


          name  age  point
state                     
NY       Alice   24     64
CA         Bob   42     92
CA     Charlie   18     70
TX        Dave   68     70
CA       Ellen   24     88
NY       Frank   30     57

In [27]:
print(df_state.index.values)


['NY' 'CA' 'CA' 'TX' 'CA' 'NY']

In [28]:
print(df_state.at['NY', 'age'])
print(type(df_state.at['NY', 'age']))


[24 30]
<class 'numpy.ndarray'>

In [29]:
print(df_state.loc['NY', 'age'])
print(type(df_state.loc['NY', 'age']))


state
NY    24
NY    30
Name: age, dtype: int64
<class 'pandas.core.series.Series'>

In [30]:
print(df_state.loc['NY', ['age', 'point']])
print(type(df_state.loc['NY', ['age', 'point']]))


       age  point
state            
NY      24     64
NY      30     57
<class 'pandas.core.frame.DataFrame'>

In [31]:
print(df_state.iat[0, 1])


24

In [32]:
print(df_state.index.is_unique)


False

In [33]:
print(df_state.columns.is_unique)


True

In [34]:
print(df)


         age state  point
name                     
Alice     24    NY     64
Bob       20    CA     92
Charlie   30    CA     70
Dave      40    TX     70
Ellen     24    CA     88
Frank     30    NY     57

In [35]:
print(df.index[2])


Charlie

In [36]:
print(df.columns[1])


state

In [37]:
print(df.at[df.index[2], 'age'])


30

In [38]:
print(df.loc[['Alice', 'Dave'], df.columns[1]])


name
Alice    NY
Dave     TX
Name: state, dtype: object

In [39]:
print(df['age'][2])


30

In [40]:
print(df.age[2])


30

In [41]:
print(df.loc[['Alice', 'Dave']].iloc[:, 1])


name
Alice    NY
Dave     TX
Name: state, dtype: object