인사말

안녕하세요~

벌써 교육 2주차가 됐네요!

12월 4일까지 과제 제출이 있기 때문에

그 날까지는 과제 중심으로 공부를 하게 될 것 같습니다!

그래도 프로그래머스의 0단계 문제를 꼬박 꼬박 3개씩 풀어보려구요!


오전 ( 09 : 00 ~ 13 : 00)

오늘은 과제 2를 공부했답니다!

class를 써서 인적사항을 정리하는 내용인데요

과제의 조건을 저렇습니다.

그래서 class에 대해 제대로 강의 영상을 보지 않고,

알고 있는 내용만으로 작성을 해보았어요

 

<11월 29일 금요일_1트>

11월 29일 금요일에 새벽까지 남아서 해봤거든요?

해야 할 일은 빨리빨리 끝내고 싶어해서, 해보았는데

감이 전혀 잡히지 않아서,, 그냥 자러 갔습니다

 

<12월 1일 일요일_2트>

될리가 없죠 🧐

다시 보고, 계속 뭐가 문제인지 생각해보니까

"객체"를 설정하지 않았더라구요

그리고 첫 번째의 def __init__(): 에서

한 번에 다 적어내려도 됐던 거였어요..!

유튜브 강의를 보고 깨달았답니다 ㅠㅠ

 

<12월 1일 일요일_3트>

객체를 이런식으로 설정하는 게 아닌가봐요? 🧐

영상을 좀 더 찾아보고 해봐야겠어요

 

<12월 2일 월요일_4트>

# 4트
class person:
    def __init__(self):
        self.name = input("이름을 입력해주세요 -> ")
        self.gender = input("성별을 입력해주세요 -> ")
        self.age = int(input("나이를 입력해주세요 -> "))
        
    def display(self):
        print("이름 : {}, 성별 : {}, 나이 : {}".format(self.name, self.gender, self.age))
        
# 객체 생성(=person_info)
person_info = person()
person_info.display()

display() = show()랑 같더라구요

처음엔 show()로 입력하였는데, 과제 내용을 보니까

display()로 하라고 해서 수정하였습니다!

그리고

이해하지 못 했던 "객체 생성"도 영상을 여러개 보다 보니,

이해하게 되었습니다. 😝

# 4트
    def display(self):
        print("이름 : {}, 성별 : {}, 나이 : {}".format(self.name, self.gender, self.age))
print("이름 : ", self.name, "성별 : ", self.gender, "나이 : ", self.age)

그리고 .format() 함수를 이렇게도 표현할 수 있다는 걸

튜터 님한테 상담했을 시, 알게 되었습니다

근데 .format()을 쓰는 게 더 편한 거 같아요 😋

추가 정보를 알려주셔서 감사합니다 히히 😉

 

11 : 00 ~ 13 : 00

이제 마지막 과제인 "Python 라이브러리로 데이터 분석하기" 만 남았는데요

아직 라이브러리에 대한 개념이 없어서,

스파르타 내일배움캠프에서 지급해준

파이썬 라이브러리 강의를 시청해주었습니다 😋

그래서 pandas라는 것도 깔아보았습니다

Terminal에서 설치를 설정하면 되더라구요..

강의로 설치를 따라가려 했는데

강의 보면서 하니까 전혀 모르겠어서 튜터 님께 찾아가서 해결했습니다 😢

이제 import pandas 해서 쓰면 된다고 하셨어요!

 

과제 3번은 시작부터 어렵네요 ㅠㅠ

 

<가상환경 활성화 하기>

1. conda 공식 사이트에 들어가서 설치를 합니다.

2. 가상환경 이름을 만들어주고 생성 해줄게요

<VSCode> Terminal에서 써주시면 됩니다!

 conda create -n <환경이름> python=3.10
Ex) conda create -n myenv python=3.10

3. 가상환경을 활성화 해줄 겁니다

conda activate <환경이름>
conda activate myenv

4. 주피터도 설치해주고요

conda install jupyter

5. ipykernel도 설치해줍니다.

conda install ipykernel

6. 가상환경을 jupyter 커널로 추가해줍니다.

python -m ipykernel install --user --name=myenv --display-name "Python (myenv)"

7. 주피터 노트북을 실행해서 브라우저에서 잘 되고 있는지 확인 해줄게요

jupyter notebook

8. 버전 확인 및 파일이 잘 열어지는지 확인해볼게요

import numpy as np
import pandas as pd

print("NumPy version:", np.__version__)
print("Pandas version:", pd.__version__)
df = pd.read_excel('crime.xlsx')
df

9. 다시 VSCode로 돌아가서 ipynb 파일을 찾아갑니다.

그러면 오른쪽에 Select Kernel이 떠요 그걸 누르시면

이렇게 이전까지 생성 중이었던 가상환경이 보이실 겁니다.

그걸 눌러주세요.

최종 화면이 이렇게 된다면

준비 끝입니다 😭

팀원 언니의 도움이 없었더라면 여기까지 절대 못 왔어요 ㅠㅠ

설정을 끝내고 나니까, 꼬질꼬질한 시골 강아지가 된 기분이네요

하필 오늘 입은 옷도 누렁이 옷이었구요 🤣


오후 ( 14 : 00 ~ 18 : 00)

15시까지가 되어서야 가상환경 설정을 끝냈습니다 ⛳️

이제  과제 3번을 해보아야겠지요,,

과제 3번에는 총 7가지의 Quiz가 있습니다

첫 번째 퀴즈

import pandas as pd
df = pd.DataFrame('crime.xlsx')
print(df)

왜 안 되는지 모르겠어요

뭐가 문제였을까요 🧐

 

그래서 다시 인강으로 돌아가보았습니다

데이터 프레임이라는 내용이 있거든요

import pandas as pd

# 예시: 시리즈 생성
s = pd.Series([10, 20, 30, 40], index=['a', 'b', 'c', 'd'])
print(s)

약간 딕셔너리와 비슷한 구조더라구요

Series는 리스트 느낌이었고, index는 딕셔너리 느낌이었습니다.

 

15 : 30 ~ 16 : 30

<Data Frame 생성하기>

import pandas as pd
dataframe = pd.read_excel('crime.xlsx')
dataframe

일단 첫 번째 퀴즈는 완수를 해냈어요!

강의를 듣다가도 첫 번째 퀴즈를 풀어낼 수 있을 거 같아서

계속 고민을 해봤더니 처음에 테스트겸 파일 불러왔잖아요?

그거를 그냥 data frame으로 적었습니다

여기서 추출이 돠냐 안 되냐는 다음 문제를 풀어보면서 확인하려구요 😤

 

16: 35 ~ 18 : 00

<유튜브에 있는 파이썬 판다스 강의 시청>

기본 개념이 있어야 할 수 있겠다 싶어서

기초부터 차근차근 쌓아가려구요,,

오늘의 문제 풀이는 여기까지만 하고

개념 정리 후에 저녁 시간엔 프로그래머스 문제 풀 겁니다 😉


저녁 ( 19 : 00 ~ 21 : 00)

벌써 오늘의 저녁 시간이 됐네요

과제 3번의 2번 문제를 풀어보았습니다!

문제에서 힌트를 얻어서 만들어보았어요

dataframe['구 별'] = dataframe['관서명'].map(df).fillna('구 없음')

dataframe

새롭게 만들 열을 dataframe['컬럼 명']으로 추가해주고

그와 참조할 열 이름을 dataframe['관서명'].map(df)으로 해준 뒤!!

여기서!! 처음 알은 함수!! .fillna()는 fill in처럼 ~을 채우다 라는 의미라고 하더라구요

그래서 .fillna()만 적으면 NaN으로 출력되는 걸 확인했습니다!

그래서 원하는 값으로 .fillna('구 없음')을 적어주어 문제 해결했습니다!


마무리

하,, 머리 너무 아픕니다

판다스가 확실히 데이터가 없고, 배운 적도 없어서 감이 안 잡혀요

하나 푸니까 다음 문제에 또 막히고

하나 푸니까 다음 문제에 또 막혀요

알아낼 때 재밌긴 한데!

과정이,, ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

과정 덕분에 해결이 되었을 때만큼 짜릿한 게 없는 거 같아요 😁

내일은 더 파이팅 해야겠어요

4일에 제출해야 하기 때문에 담은 4문제 풀어야 해요!!

파이팅!! 🔥

🐾Recent posts