ㄱ. array, list, dictionary를 모두 활용하여 데이터 프레임을 생성할 수 있다.(O)
ㄴ. inplace = True 는 Call by value에서 Call by reference로 변환하는 옵션이다.(O)
ㄷ. Tab으로 데이터가 구분되어 있으면 ‘data/friend_list_tab.txt’형식으로 출력하면 된다.(X)
→위에 언급한 방식으로 출력하게 되면 에러가 발생한다. tab으로 구분 되어 있는 데이터는 (‘data/friend_list_tab.txt’ delimiter = ‘\\t’)형식으로 출력해야 한다.
ㄹ. OrderedDict 모듈을 활용하여 데이터 프레임의 key의 순서를 보장할 수 있다.(X)
→Collections **모듈**에서 Ordered Dict **클래스**를 활용하여 ~
ㄱ. 데이터 프레임에서 행/열을 영구 삭제 할 때는 drop([])만 입력하면 된다.(X)
→영구 삭제를 원할 경우 df = df.drop(~)를 사용해야 한다.
ㄴ. Data가 너무 많을 경우 df.head / df.tail을 이용하여 소량의 데이터만 확인할 수 있다.(O)
ㄷ. pandas로 HDF5.엑셀,csv,.mdb파일을 불러올 수 있고, 불러오고 읽는 방법은 모두 같다.(X)
→.mdb파일은 SQL-query 이용해서 불러와야 한다. 엑셀은 openptxl이 설치가 필요하다.
ㄹ. drop(['score'], axis=1) 은 score라는 열을 처리하는 문장이다.(O)
ㅁ. 기존 데이터 프레임과 추가할 데이터 프레임 컬럼 명이 동일하지않다면 에러가 발생한다.(X)
→서로 갖고 있지 않은 열에 있어서는 ‘NaN’으로 처리하며 행이 추가됩니다.
SAI다 조의 답안이 깔끔한 관계로 SAI다 조의 답안으로 제출하겠습니다.
import random
import pandas as pd
# 빈 DataFrame 생성하기
df = pd.DataFrame(columns=['번호', '여부'])
for idx in range(1, 101):
# 1과 100 사이의 random 한 값 생성하기
number = random.randint(1, 101)
# DataFrame에 특정 정보를 이용하여 data 채우기
if number<=10:
df = df.append(pd.DataFrame([[idx, 'O']], columns=['번호', '여부']))
else:
df = df.append(pd.DataFrame([[idx, ' ']], columns=['번호', '여부']))
df.set_index('번호', inplace=True)
print (df)
import pandas as pd
sejong_report_card = [
{'math' : 100,'science':96,'english':95,'computer':98,'korean':100}
]
df = pd.DataFrame(sejong_report_card)
df['spanish'] = 70
import numpy as np
a=['math','science','english','computer','korean','spanish']
b=['오늘','저녁은','치','킨','이다','야호!']
for i in range(6):
df[a[i]] = np.where(df[a[i]]!= 100,100,'perfect')
df.loc[1] = b
df
from google.colab import drive
drive.mount('/content/drive')
import pandas as pd
df = pd.read_excel('drive/MyDrive/data/reception.xlsx')
df = df[df.class_n < 19]
df = df[df.council == 'X']
fossil_list = list(df.iloc[:,0])
print('화석 명단')
print(f'> {fossil_list}')
fossil_idx = df.index
df = pd.read_excel('drive/MyDrive/data/reception.xlsx')
clear = df.drop(df.index[fossil_idx])
clear = clear.set_index('name')
clear = clear.reset_index()
clear.to_excel('drive/MyDrive/data/Renew_reception.xlsx')