In [1]:
import pandas as pd

In [2]:
df = pd.read_csv('data/src/sample_pandas_normal.csv', index_col=0)
df['f_data'] = [0.1, 0.2, 0.3, 0.4, 0.5, 0.6]
print(df)


         age state  point  f_data
name                             
Alice     24    NY     64     0.1
Bob       42    CA     92     0.2
Charlie   18    CA     70     0.3
Dave      68    TX     70     0.4
Ellen     24    CA     88     0.5
Frank     30    NY     57     0.6

In [3]:
print(df.dtypes)


age         int64
state      object
point       int64
f_data    float64
dtype: object

In [4]:
print(type(df.dtypes))
print(type(df.dtypes[0]))


<class 'pandas.core.series.Series'>
<class 'numpy.dtype'>

In [5]:
print(df.dtypes == 'int64')


age        True
state     False
point      True
f_data    False
dtype: bool

In [6]:
print(df.loc[:, df.dtypes == 'int64'])


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

In [7]:
print(df.dtypes != 'object')


age        True
state     False
point      True
f_data     True
dtype: bool

In [8]:
print(df.loc[:, df.dtypes != 'object'])


         age  point  f_data
name                       
Alice     24     64     0.1
Bob       42     92     0.2
Charlie   18     70     0.3
Dave      68     70     0.4
Ellen     24     88     0.5
Frank     30     57     0.6

In [9]:
print(df.dtypes == 'int')


age        True
state     False
point      True
f_data    False
dtype: bool

In [10]:
print(df.loc[:, df.dtypes == 'int'])


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

In [11]:
df = df.astype({'age': 'int8'})

In [12]:
print(df.dtypes)


age          int8
state      object
point       int64
f_data    float64
dtype: object

In [13]:
print(df.dtypes == 'int')


age       False
state     False
point      True
f_data    False
dtype: bool

In [14]:
print(df.dtypes.isin(['int8', 'int64']))


age       False
state     False
point      True
f_data    False
dtype: bool

In [15]:
print((df.dtypes == 'int8') | (df.dtypes == 'int64'))


age        True
state     False
point      True
f_data    False
dtype: bool

In [16]:
print(df.loc[:, (df.dtypes == 'int8') | (df.dtypes == 'int64')])


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

In [17]:
print(df.dtypes.astype('str').str.contains('int'))


age        True
state     False
point      True
f_data    False
dtype: bool

In [18]:
print(df.loc[:, df.dtypes.astype('str').str.contains('int')])


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

In [19]:
print(df.loc[:, df.dtypes != 'object'])


         age  point  f_data
name                       
Alice     24     64     0.1
Bob       42     92     0.2
Charlie   18     70     0.3
Dave      68     70     0.4
Ellen     24     88     0.5
Frank     30     57     0.6