3장 - 데이터 살펴보기

 

mpg(csv)파일을 불러오자.

import pandas as pd

df = pd.read_csv('C:\\Users\\woghk\\AppData\\Local\\Microsoft\\WindowsApps\/auto-mpg.csv', header = None)

df.columns = ["mpg","cylinders",'displacement','horsepower','weight','acceleration','model year','origin','name']

print(df.head()) # head()는 데이터의 상단부분만 노출!!!
                # tail()은 데이터의 하단부분만 노출!
print('\n')
print(df.tail())

print(df.shape) # . shape 은 데이터의 행x열 개수를 반환한다.
# Data Frame의 기본 정보 = info() 함수 사용

print(df.info())
# Data Frame의 각 열이 어떤 자료형인지 볼 수 있다. . dtypes를 통해서
# info안에 포함되어 있음.

print(df.dtypes)

# describe 기술정보

print(df.describe())
print('\n')
print(df.describe(include='all'))

결과값

    mpg  cylinders  displacement horsepower  weight  acceleration  model year  \
0  18.0          8         307.0        130    3504          12.0          70   
1  15.0          8         350.0        165    3693          11.5          70   
2  18.0          8         318.0        150    3436          11.0          70   
3  16.0          8         304.0        150    3433          12.0          70   
4  17.0          8         302.0        140    3449          10.5          70   

   origin                       name  
0       1  chevrolet chevelle malibu  
1       1          buick skylark 320  
2       1         plymouth satellite  
3       1              amc rebel sst  
4       1                ford torino  


      mpg  cylinders  displacement horsepower  weight  acceleration  \
393  27.0          4         140.0         86    2790          15.6   
394  44.0          4          97.0         52    2130          24.6   
395  32.0          4         135.0         84    2295          11.6   
396  28.0          4         120.0         79    2625          18.6   
397  31.0          4         119.0         82    2720          19.4   

     model year  origin             name  
393          82       1  ford mustang gl  
394          82       2        vw pickup  
395          82       1    dodge rampage  
396          82       1      ford ranger  
397          82       1       chevy s-10  
(398, 9)
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 398 entries, 0 to 397
Data columns (total 9 columns):
 #   Column        Non-Null Count  Dtype  
---  ------        --------------  -----  
 0   mpg           398 non-null    float64
 1   cylinders     398 non-null    int64  
 2   displacement  398 non-null    float64
 3   horsepower    398 non-null    object 
 4   weight        398 non-null    int64  
 5   acceleration  398 non-null    float64
 6   model year    398 non-null    int64  
 7   origin        398 non-null    int64  
 8   name          398 non-null    object 
dtypes: float64(3), int64(4), object(2)
memory usage: 28.1+ KB
None
mpg             float64
cylinders         int64
displacement    float64
horsepower       object
weight            int64
acceleration    float64
model year        int64
origin            int64
name             object
dtype: object
              mpg   cylinders  displacement       weight  acceleration  \
count  398.000000  398.000000    398.000000   398.000000    398.000000   
mean    23.514573    5.454774    193.425879  2970.424623     15.568090   
std      7.815984    1.701004    104.269838   846.841774      2.757689   
min      9.000000    3.000000     68.000000  1613.000000      8.000000   
25%     17.500000    4.000000    104.250000  2223.750000     13.825000   
50%     23.000000    4.000000    148.500000  2803.500000     15.500000   
75%     29.000000    8.000000    262.000000  3608.000000     17.175000   
max     46.600000    8.000000    455.000000  5140.000000     24.800000   

       model year      origin  
count  398.000000  398.000000  
mean    76.010050    1.572864  
std      3.697627    0.802055  
min     70.000000    1.000000  
25%     73.000000    1.000000  
50%     76.000000    1.000000  
75%     79.000000    2.000000  
max     82.000000    3.000000  


               mpg   cylinders  displacement horsepower       weight  \
count   398.000000  398.000000    398.000000        398   398.000000   
unique         NaN         NaN           NaN         94          NaN   
top            NaN         NaN           NaN        150          NaN   
freq           NaN         NaN           NaN         22          NaN   
mean     23.514573    5.454774    193.425879        NaN  2970.424623   
std       7.815984    1.701004    104.269838        NaN   846.841774   
min       9.000000    3.000000     68.000000        NaN  1613.000000   
25%      17.500000    4.000000    104.250000        NaN  2223.750000   
50%      23.000000    4.000000    148.500000        NaN  2803.500000   
75%      29.000000    8.000000    262.000000        NaN  3608.000000   
max      46.600000    8.000000    455.000000        NaN  5140.000000   

        acceleration  model year      origin        name  
count     398.000000  398.000000  398.000000         398  
unique           NaN         NaN         NaN         305  
top              NaN         NaN         NaN  ford pinto  
freq             NaN         NaN         NaN           6  
mean       15.568090   76.010050    1.572864         NaN  
std         2.757689    3.697627    0.802055         NaN  
min         8.000000   70.000000    1.000000         NaN  
25%        13.825000   73.000000    1.000000         NaN  
50%        15.500000   76.000000    1.000000         NaN  
75%        17.175000   79.000000    2.000000         NaN  
max        24.800000   82.000000    3.000000         NaN

info()shapedtypes()describe()등등 이 있다..

 

+ 데이터 개수 확인 + ( value_counts() )

# df.count()함수   :  각 열의 데이터 개수를 반환한다.  (유효한 데이터만)
print(df.count())
print('\n')

# df.count()가 반환하는 객체 타입도 출력한다. type(): 객체의 타입
print(type(df.count()))

# value_counts() 함수는 데이터 각 열의 고유값의 종류와 개수를 확인함 dropna=True를 더하면 Nan데이터 제외
unique_values =  df["origin"].value_counts()
print(unique_values)
print('\n')
print(type(unique_values))

결과값

mpg             398
cylinders       398
displacement    398
horsepower      398
weight          398
acceleration    398
model year      398
origin          398
name            398
dtype: int64


<class 'pandas.core.series.Series'>
1    249
3     79
2     70
Name: origin, dtype: int64


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

 

각 열의 고유값 개수 = value_counts()

+ Recent posts