본문 바로가기
study/Python

[Python] 41. Test 답

by 금이패런츠 2022. 6. 30.
728x90
반응형
# -*- coding: utf-8 -*-
"""
Created on Thu Jun 30 15:50:43 2022

@author: KITCOOP
test0630_A.py 
"""
import pandas as pd
product=pd.Series(['사과','딸기','수박'])
price=pd.Series([1800,1500,3000])
qty=pd.Series([24,38,13])
df=pd.DataFrame({'제품':product,'가격':price,'판매량':qty})
print(df)

'''
1. df 데이터 프레임을 판매량의 역순으로 정렬하여 출력하는 코드를 작성하시오 
   단 데이터프레임 객체가 정렬되도록 변경되어야 합니다.
'''
#df=df.sort_values(by="판매량",ascending=False)
df.sort_values(by="판매량",ascending=False,inplace=True)
print(df)

'''
2. 가격 * 판매량 값을 저장 하는 총판매가격 컬럼을 추가 하는 코드를 작성하시오
'''
df['총판매가격']=df['가격']*df['판매량']
print(df)

'''
seoul.csv 파일은 https://data.kma.go.kr 사이트 기후통계분석 > 기온분석 메뉴에서 2000년1월부터 2022년6월 29일까지의 
서울의 일별 데이터를 다운받은 파일이다.
seoul.csv파일의 위치는 현재폴더의 data폴더에 존재한다고 가정한다.
파일의 encoding은 cp949로 설정한다.

3. pandas를 이용하여 파일을 읽는 코드를 작성하시오
​'''
import pandas as pd
seoul=pd.read_csv('data/seoul.csv',encoding='cp949')
print(seoul.head())

'''
4. 컬럼 명을 평균기온(℃) -> 평균기온, 최저기온(℃)->최저기온, 최고기온(℃)->최고기온으로 컬럼명을 변경하는 코드를 작성하시오
'''
#seoul.rename(columns={'평균기온(℃)':'평균기온','최저기온(℃)':'최저기온',\
#                   '최고기온(℃)':'최고기온'},inplace=True)
seoul.columns=["날짜","지점","평균기온","최저기온","최고기온"]
print(seoul)

'''
5. 지점 컬럼을 삭제하는 코드를 작성하기
'''
seoul.drop('지점',axis=1,inplace=True)
print(seoul)


'''
6. 2000년 이후 서울이 가장 더웠던 날과 온도를 출력하는 코드를 작성하기
[결과]

날짜 2018-08-01
평균기온 33.6
최저기온 27.8
최고기온 39.6
Name: 6787, dtype: object

'''
seoul1=seoul.sort_values(by='최고기온',ascending=False)
seoul1.iloc[0]

seoul.iloc[seoul.최고기온.idxmax()]

'''
7. 최고기온과 최저기온의 차를 저장하는 일교차 컬럼을 생성하고, 일교차가 가장 큰날짜를 출력
하는 코드를 작성하시오

[결과]
일교차가 가장 큰 날짜: 2015-04-18 ,일교차: 18.5

'''
seoul['일교차']=seoul['최고기온']-seoul['최저기온']

seoul2=seoul.sort_values(by='일교차',ascending=False)
print('일교차가 가장 큰 날짜:',seoul2.iloc[0]['날짜'],',','일교차:',\
      seoul2.iloc[0]['일교차'])

seoul2 = seoul.iloc[seoul.일교차.idxmax()]
print('일교차가 가장 큰 날짜:',seoul2['날짜'],',','일교차:',\
      seoul2['일교차'])

'''
8. 평균기온,최저기온,최고기온의 평균값을 구하는 코드를 작성하시오

[결과]
평균기온 12.885965
최저기온 8.996880
최고기온 17.438657
dtype: float64

'''
seoul.mean()[["평균기온","최저기온","최고기온"]]


'''
9. 월별 평균 일교차를 구하는 코드를 작성하시오. 월컬럼을 생성하기
[결과]
월 
01 7.590762
02 8.370096
03 9.242082
04 9.800000
05 10.062757
06 8.877879
07 6.587558
08 6.954992
09 8.345397
10 9.507231
11 8.272540
12 7.580031
Name: 일교차, dtype: float64

'''
seoul.info()
seoul["월"] = seoul["날짜"].str.split("-").str.get(1)
seoul.groupby('월').mean()['일교차']
728x90
반응형