pandas 라이브러리를 활용한 다양한 방법들을 학습하였다.
1. 불러오기 관련
✅ nrows
✅ tsv 파일 불러오기
2. 불러올때 column 설정
✅ header
✅ names
✅ index_col
✅ index.name
✅ parse_dates
✅ dtype
3. API활용하여 XML 데이터 파싱
4. 저장하기
✅ to_csv(encoding, index=False, header = False)
✅ mode
df = pd.read_csv("week1_1.csv")
display (df.head())
print (df.shape) # (50, 6)
df = pd.read_csv("week1_1.csv", nrows=7)
display (df.head())
print (df.shape)

df = pd.read_csv('/Users/sookyeong/Documents/내배캠/스탠다드B/week1_1.tsv', sep = '\t')
df.head()


df = pd.read_csv("week1_1.csv", header=None)
df.head()

df = pd.read_csv("week1_1.csv", names=['c1', 'c2', 'c3', 'c4', 'c5', 'c6'])
df.head()

df = pd.read_csv("week1_1.csv", header=None, names=['c1', 'c2', 'c3', 'c4', 'c5', 'c6'])
df.head()

df = pd.read_csv("week1_1.csv", header=1) # 두번 째 행을 컬럼명으로 하고 싶을 때 (주로 엑셀 형태로 관리되었던 파일에서 사용.)
df.head()

df = pd.read_csv("week1_1.csv", index_col=0)
df.head()

df = pd.read_csv("week1_1.csv", index_col=0)
df.index.name = None
df.head()
df = pd.read_csv("week1_1.csv", index_col=0, parse_dates = True)
df.index.name = None
df.head()
print(df.index.dtype) # datetime64[ns]
날짜형식 활용
원하는 날짜를 기준으로 데이터를 불러올 수 있음
df[df.index.month == 10] #10월달의 데이터만
from datetime import datetime
cutoff_date = datetime(2023, 10, 1) # 해당날짜보다 큰 날짜 출력
df[df.index > cutoff_date]

df = pd.read_csv("week1_1.csv", dtype={'number':'object'})
df.dtypes



import requests
serviceKey = "~~~~~" # 일반 인증키 (Decoding)
url = 'http://apis.data.go.kr/B551182/yadmOpCloInfoService1/getHospPharmacyOpCloList'
params ={'serviceKey' : serviceKey, 'numOfRows' : '10', 'pageNo' : '1', 'crtrYm' : '202401', 'yadmTp' : '0', 'opCloTp' : '0' }
response = requests.get(url, params=params)
# print(response.content) # bytes 형태여서 보기 힘듦.
content = response.content.decode('utf-8') # utf-8로 디코딩함.
df = pd.read_xml(response.content, xpath=".//item")

df.to_csv('file_name.csv')
#저장한 파일이 글자가 깨졌다면
df.to_scv('file_name.csv', encoding = 'cp949')
#index 저장하지 않을 때
df.to_scv('file_name.csv', index = False)
#header 저장하지 않을 때
df.to_scv('file_name.csv', header = False)
#파일이 이미 있을 경우 덮어쓰기
df.to_csv("file_name.csv", mode='w')
#파일이 이미 있을 경우 append하기 (모델 성능을 csv 파일로 저장할 때)
df.to_csv("file_name.csv", mode='a')
#파일이 이미 있을 경우 생성하지 않음
df.to_csv("file_name.csv", mode='x')
#tsv로 저장(자주사용하지 않음)
df.to_csv("file_name.tsv", sep = '\t')