How to find the class of columns of an R data frame?


To find the class of columns of an R data frame, we can use class function along with sapply and as.data.frame function.

For Example, if we have a data frame called DF then we can find the class of columns in DF by using the command as follows −

data.frame(sapply(DF,class))

Example 1

Consider the below data frame −

head(mtcars,20)

The following dataframe is created

                     mpg  cyl   disp   hp  drat     wt   qsec  vs am gear carb
Mazda RX4           21.0    6  160.0  110  3.90  2.620  16.46   0  1    4    4
Mazda RX4 Wag       21.0    6  160.0  110  3.90  2.875  17.02   0  1    4    4 
Datsun 710          22.8    4  108.0   93  3.85  2.320  18.61   1  1    4    1
Hornet 4 Drive      21.4    6  258.0  110  3.08  3.215  19.44   1  0    3    1
Hornet Sportabout   18.7    8  360.0  175  3.15  3.440  17.02   0  0    3    2
Valiant             18.1    6  225.0  105  2.76  3.460  20.22   1  0    3    1
Duster 360          14.3    8  360.0  245  3.21  3.570  15.84   0  0    3    4
Merc 240D           24.4    4  146.7   62  3.69  3.190  20.00   1  0    4    2
Merc 230            22.8    4  140.8   95  3.92  3.150  22.90   1  0    4    2
Merc 280            19.2    6  167.6  123  3.92  3.440  18.30   1  0    4    4
Merc 280C           17.8    6  167.6  123  3.92  3.440  18.90   1  0    4    4
Merc 450SE          16.4    8  275.8  180  3.07  4.070  17.40   0  0    3    3
Merc 450SL          17.3    8  275.8  180  3.07  3.730  17.60   0  0    3    3
Merc 450SLC         15.2    8  275.8  180  3.07  3.780  18.00   0  0    3    3
Cadillac Fleetwood  10.4    8  472.0  205  2.93  5.250  17.98   0  0    3    4
Lincoln Continental 10.4    8  460.0  215  3.00  5.424  17.82   0  0    3    4
Chrysler Imperial   14.7    8  440.0  230  3.23  5.345  17.42   0  0    3    4
Fiat 128            32.4    4   78.7   66  4.08  2.200  19.47   1  1    4    1
Honda Civic         30.4    4   75.7   52  4.93  1.615  18.52   1  1    4    2
Toyota Corolla      33.9    4   71.1   65  4.22  1.835  19.90   1  1    4    1

To check the class of columns in mtcars on the above created data frame, add the following code to the above snippet −

as.data.frame(sapply(mtcars,class))

Output

If you execute all the above given snippets as a single program, it generates the following Output −


     sapply(mtcars, class)
mpg              numeric
cyl              numeric
disp             numeric
hp               numeric
drat             numeric
wt               numeric
qsec             numeric
vs               numeric
am               numeric
gear             numeric
carb             numeric

Example 2

Consider the following data frame −

head(CO2,20)

If you execute the above given snippet, it generates the following Output −

  Plant    Type   Treatment   conc   uptake
1   Qn1  Quebec  nonchilled     95     16.0
2   Qn1  Quebec  nonchilled    175     30.4
3   Qn1  Quebec  nonchilled    250     34.8
4   Qn1  Quebec  nonchilled    350     37.2
5   Qn1  Quebec  nonchilled    500     35.3
6   Qn1  Quebec  nonchilled    675     39.2
7   Qn1  Quebec  nonchilled   1000     39.7
8   Qn2  Quebec  nonchilled     95     13.6
9   Qn2  Quebec  nonchilled    175     27.3
10  Qn2  Quebec  nonchilled    250     37.1
11  Qn2  Quebec  nonchilled    350     41.8
12  Qn2  Quebec  nonchilled    500     40.6
13  Qn2  Quebec  nonchilled    675     41.4
14  Qn2  Quebec  nonchilled   1000     44.3
15  Qn3  Quebec  nonchilled     95     16.2
16  Qn3  Quebec  nonchilled    175     32.4
17  Qn3  Quebec  nonchilled    250     40.3
18  Qn3  Quebec  nonchilled    350     42.1
19  Qn3  Quebec  nonchilled    500     42.9
20  Qn3  Quebec  nonchilled    675     43.9

To check the class of columns in CO2 on the above created data frame, add the following code to the above snippet −

as.data.frame(sapply(CO2,class))

Output

If you execute all the above given snippets as a single program, it generates the following Output −

    Plant  Type Treatment    conc  uptake
1 ordered factor   factor numeric numeric
2 factor  factor   factor numeric numeric

Example 3

Consider the following data frame −

head(sleep,20)

Output

If you execute the above given snippet, it generates the following Output −

   extra group ID
1    0.7     1  1
2   -1.6     1  2
3   -0.2     1  3
4   -1.2     1  4
5   -0.1     1  5
6    3.4     1  6
7    3.7     1  7
8    0.8     1  8
9    0.0     1  9
10   2.0     1 10
11   1.9     2  1
12   0.8     2  2
13   1.1     2  3
14   0.1     2  4
15  -0.1     2  5
16   4.4     2  6
17   5.5     2  7
18   1.6     2  8
19   4.6     2  9
20   3.4     2 10

To check the class of columns in sleep on the above created data frame, add the following code to the above snippet −

as.data.frame(sapply(sleep,class))

Output

If you execute all the above given snippets as a single program, it generates the following Output −

       sapply(sleep, class)
extra              numeric
group               factor
ID                  factor

Updated on: 28-Oct-2021

5K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements