본문 바로가기

Python_Intermediate/Pandas

Pandas - 연비 TEST Data 분석 2

반응형

1. 평균 연비

- 평균 연비 : (고속도로 연비 + 도시 연비) / 2

- 평균 연비 20 이상 합격


2. 평균 연비 구하기

df['연비테스트'] = numpy.where((df['cty'] + df['hwy']) / 2 >= 20, '합격', '불합격')
print_df(df.head(10))

+---+------------+--------------+------------+-------+------+-----+------------+-----+-----+-----+----+---------+------------+

|   | Unnamed: 0 | manufacturer |   model    | displ | year | cyl |   trans    | drv | cty | hwy | fl |  class  | 연비테스트 |

+---+------------+--------------+------------+-------+------+-----+------------+-----+-----+-----+----+---------+------------+

| 0 |     1      |     audi     |     a4     |  1.8  | 1999 |  4  |  auto(l5)  |  f  |  18 |  29 | p  | compact |    합격    |

| 1 |     2      |     audi     |     a4     |  1.8  | 1999 |  4  | manual(m5) |  f  |  21 |  29 | p  | compact |    합격    |

| 2 |     3      |     audi     |     a4     |  2.0  | 2008 |  4  | manual(m6) |  f  |  20 |  31 | p  | compact |    합격    |

| 3 |     4      |     audi     |     a4     |  2.0  | 2008 |  4  |  auto(av)  |  f  |  21 |  30 | p  | compact |    합격    |

| 4 |     5      |     audi     |     a4     |  2.8  | 1999 |  6  |  auto(l5)  |  f  |  16 |  26 | p  | compact |    합격    |

| 5 |     6      |     audi     |     a4     |  2.8  | 1999 |  6  | manual(m5) |  f  |  18 |  26 | p  | compact |    합격    |

| 6 |     7      |     audi     |     a4     |  3.1  | 2008 |  6  |  auto(av)  |  f  |  18 |  27 | p  | compact |    합격    |

| 7 |     8      |     audi     | a4 quattro |  1.8  | 1999 |  4  | manual(m5) |  4  |  18 |  26 | p  | compact |    합격    |

| 8 |     9      |     audi     | a4 quattro |  1.8  | 1999 |  4  |  auto(l5)  |  4  |  16 |  25 | p  | compact |    합격    |

| 9 |     10     |     audi     | a4 quattro |  2.0  | 2008 |  4  | manual(m6) |  4  |  20 |  28 | p  | compact |    합격    |

+---+------------+--------------+------------+-------+------+-----+------------+-----+-----+-----+----+---------+------------+


3. 평균 연비를 가지고 합격 / 불합격 갯수 DataFrame 생성

count = df['연비테스트'].value_counts()
count_df = DataFrame(count)
print_df(count_df)

+--------+------------+

|        | 연비테스트 |

+--------+------------+

|  합격  |    128     |

| 불합격 |    106     |

+--------+------------+




Process finished with exit code 0


4. 연비테스트 합격 비율 그래프 시각화(파이 그래프 사용)

pyplot.rcParams["font.family"] = 'NanumGothic'
pyplot.rcParams["font.size"] = 14
pyplot.rcParams["figure.figsize"] = (10, 10)

count_df['연비테스트'].plot.pie(autopct='%0.1f%%')
pyplot.grid()
pyplot.title("연비테스트 합격 비율")
pyplot.savefig('mpg.png', dpi=200)
pyplot.show()
pyplot.close()

반응형