https://dataq.goorm.io/exam/116674/체험하기/quiz/4 여기서 하는 성별예측 문제에서 import pandas as pd train = pd.read _csv("data/customer_train.csv") test = pd.read _csv("data/customer_test.csv") # print(train.shape, test.shape) # print( train.info ()) # print(train.isnull().sum()) # print(test.isnull().sum()) #결측치 처리 (환불금액) train['환불금액'] = train['환불금액'].fillna(0) test['환불금액'] = test['환불금액'].fillna(0) # print(test.isnull().sum()) # print(train['성별'].value_counts()) #인코딩 target = train.pop('성별') train = pd.get_dummies(train) test = pd.get_dummies(test) #검증 데이터 분리 from sklearn.model_selection import train_test_split X_tr, X_val, y_tr, y_val = train_test_split(train, target, test_size=0.2, random_state=0) # print(X_tr.shape, X_val.shape, y_tr.shape, y_val.shape) from sklearn.ensemble import RandomForestClassifier rf = RandomForestClassifier(random_state=0) rf.fit (X_tr, y_tr) pred = rf.predict_proba(X_val) # print(pred) from sklearn.metrics import roc_auc_score roc = roc_auc_score(y_val, pred[:,1]) #예측 및 파일생성 pred = rf.predict_proba(test) submit = pd.DataFrame({ "pred":pred[:,1] }) submit.to _csv("result.csv", index=False) # print( pd.read _csv("result.csv")) 이렇게 코딩을 했는데 예측 및 파일 생성에서 pred = rf.predict_proba(test) 여기 부분이 오류가 뜨는데 왜 그런가요 ㅠㅠ > Makefile:6: recipe for target 'py3_run' failed make: *** [py3_run] Error 1 Traceback (most recent call last): File "/goorm/Main.out", line 43, in <module> pred = rf.predict_proba(test) File "/usr/local/lib/python3.9/dist-packages/sklearn/ensemble/_forest.py", line 674, in predict_proba X = self._validate_X_predict(X) File "/usr/local/lib/python3.9/dist-packages/sklearn/ensemble/_forest.py", line 422, in validate X_predict return self.estimators_[0]._validate_X_predict(X, check_input=True) File "/usr/local/lib/python3.9/dist-packages/sklearn/tree/_classes.py", line 407, in validate X_predict X = self._validate_data(X, dtype=DTYPE, accept_sparse="csr", File "/usr/local/lib/python3.9/dist-packages/sklearn/base.py", line 437, in validate data self._check_n_features(X, reset=reset) File "/usr/local/lib/python3.9/dist-packages/sklearn/base.py", line 365, in check n_features raise ValueError( ValueError: X has 73 features, but DecisionTreeClassifier is expecting 74 features as input. 이렇게 뜹니다,,
안녕하세요. 좋은 강의 감사드립니다. 덕분에 잘 배우고 있습니다. 문제 2. 주어진 데이터에서 결측치가 30%이상 되는 컬럼을 찾고 해당 컬럼에 결측치가 있는 데이터(행)를 삭제 함. 그리고 30% 미만, 20% 이상인 결측치가 있는 컬럼은 최빈값으로 값을 대체하고 'f3'컬럼의 'gold' 값을 가진 데이터 수를 출력하세요! 문제2를 대하고 순간 다음과 같은 고민을 했었습니다. 1번을 수행하여 'f1'컬럼의 결측치 행을 삭제한 후 2번을 하려니 'f3'컬럼의 결측치 갯수가 18개만 남더군요. 그럼 18개는 최초 데이터 100개의 20% 미만일까? 그렇지 않다. 'f1'컬럼 결측치를 제거한 후 데이터 갯수 69개의 20%~30%(14~20)에 해당한다. 그렇다면 'f3'컬럼의 최빈 값은 'f1'컬럼의 결측치를 제거하기 전의 값을 사용해야할까 아니면 결측치 제거 후의 값을 사용해야 할까? 결과적으로는 어떤 방식으로 하던 답은 56으로 일치했지만 주어진 데이터에 따라 다른 값이 나올 수도 있을 것 같습니다. 혼돈을 없애기 위해 문제 2의 문항 순서를 바꾸면 어떨까요? 30% 미만, 20% 이상인 결측치가 있는 컬럼은 최빈값으로 값을 대체하고 주어진 데이터에서 결측치가 30%이상 되는 컬럼을 찾고 해당 컬럼에 결측치가 있는 데이터(행)를 삭제 함. 'f3'컬럼의 'gold' 값을 가진 데이터 수를 출력하세요!
안녕하세요 디버깅 실습중에 2~3번은 utf-8 인코딩에러 뜨고 한번은 정상적으로 디버깅이 되서(디버깅 아닌 실행시에는 문제없음, 아직은 한글데이터 사용도 안하는데 TT 계속 쉬프트+F9 계속 치면 한번씩 정상적으로 진행됨 TT) 인코딩 세팅도 바꿔보고( utf-16 등 다른 인코딩도 설정 해봤음) 해도 안되다가 경로(폴더명 )에 한글을 영어로 바꾸니깐 이상이 없네요(이게 원인인지는 정확하게 모르겠습니다) 참조하세요 ~~
안녕하세요 고민글은 아니고 혹시나 해서 같이 강의 들으시는 분들하고 공유하고 싶어서 글 올립니다.(아마 많이 알고 있으시겠지만 혹시나 싶어서 공유합니다. 혹시 정보공유 게시판이 있으면 알려주세요, 혹시 강사님 이글이 부적정 하다고 생각하시면 통보없이 지우셔도 무방합니다. 옮기시는 것도 자유입니다. ^^) 파이참 쓰다 보면 한 줄 자동 완성 기능 때문에 많이 당황하셨을 껍니다. (편하긴 편한데 실력 완성에 도움이 전혀 안되는 .... ) 해제하고 싶어도 보통 인터넷에 올려진 방법은 File -> Settings -> Editor -> General -> Code Completion 체크 해제인데 안되더라고요 File -> Settings -> Editor -> Inline Completion -> Enable local Full Line Completion suggestions 체크 해제 해보세요 혹시나 같이 공부하시는 분들 도움이 되셨으면 합니다. ^^
안녕하세요 강사님 올해 말 실기 시험 목표로 강의를 수강 중인 학생입니다. 강의 수강 중 문득 걱정이 되는게 있어서 문의 드립니다. 맥북 단축키 같은것도 알려주시고 당장 수강하는데는 별 문제없다고 생각하는데, 시험장에 맥북을 들고 갈 순 없는 노릇이니.. 혹시 맥북으로 공부해 갔을때 발생할 수 있는 문제와 그에 대처방법이 혹시 있을까요?
안녕하세요 비전공자 직장인입니다. 퇴근후 딴짓 님 강의를 열심히 듣고 있습니다. 현재 작업형2 모의문제 2를 혼자서 풀고 있는데, 단순한 결측치 찾고, 샘플 찾고, 그런 것들은 하겠는데 이거를 모델링 하는 거에서부터 사실 멘붕입니다. 작업형1 모의문제를 풀 때도 똑같이 강의를 듣던것보다 더 어려워서 멘붕이 왔었습니다. 일단은 모르겠는 부분은 인지한 상태로 다시 반복하겠다는 의지로 계속 강의를 듣는 게 맞겠죠? 반복이 답이겠죠??
선생님, 강의 열심히 보고 있는데 제가 5월 중순부터 시작하면서 조금 일찍 시작했는데도 불구하고 암기 할 게 너~~~~~~무 많아서 큰일입니다 ㅠㅠ 단권화 시키려고 실기용 교재를 샀는데 정말 정말 이것만큼은 꼭! 외우고 가야하는 코드나 문법같은거를 정리해주실 수 있나요? (강의나...파일로) 사실 고득점 합격은 바라지도 않고 60점 턱걸이로라도 너무 붙고싶습니다!
안녕하세요. 다름 아니라 Spring Boot가 3.XX 버전으로 업데이트가 되면서, 해당 버전을 사용하시는 분들은 1.3.176버전으로 H2 이용 시 404에러가 발생합니다. 해당 에러를 해결하려면 최신 버전으로 H2를 사용하여야 하는데요. 최신 버전으로 H2를 사용하면 1.3.176 이하 버전처럼 db가 자동 생성 되지 않습니다. 그래서 해결 방법을 찾았는데요. 이 방법은 제가 어떻게 어떻게 하다 보니 발견한 방법이라서 옳다고 할 수는 없겠지만, H2를 테스트용으로만 사용하기 때문에 띄우기만 하면 되므로 문제 없을 것 같아 공유드립니다. 우선 pom.xml에서 h2 dependency를 추가하였다면, 아래 이미지처럼 왼쪽 프로젝트 창의 External Libraries 리스트에서 h2를 찾을 수 있습니다. 해당 h2 jar파일을 우클릭하면 탭이 뜨는데 Open Library Settings(F4)를 선택하면 h2 jar 파일의 위치를 확인할 수 있습니다. 그럼 해당 위치로 가셔서 jar파일을 더블 클릭하여 실행시키면 브라우저에서 H2 콘솔이 실행됩니다. (h2 jar 파일 우클릭 시 탭에서 Open in > Directory Path(Ctrl + Alt + F12)를 선택하면 Show Explorer탭이 뜨고, jar 파일 선택하면 폴더로 바로 이동 됩니다) 이 때 우측 하단의 트레이를 확인해보시면 H2 Database Engine이 실행된 것도 확인할 수 있습니다. 이제 브라우저의 H2 콘솔에서 Generic H2 (Embedded) 를 선택하시고 강의 내용대로 아래 이미지처럼 작성해주세요. 연결 시험(Test Connection)을 눌러보면 아래 이미지처럼 db가 없다고 나올 것입니다. 그렇지만 걱정 마시고 이 상태에서 연결을 눌러보세요. db가 생성된 화면을 만날 수 있습니다. 이제 db가 생성이 된 것입니다. 그렇기 때문에 뒤로 가기를 눌러 다시 로그인 화면이 뜬 후에 연결 시험(Test Connection)을 눌러보면 아까와는 다르게 Test Successful이라는 성공 메세지를 만날 수 있습니다. (그러나 이것은 브라우저의 H2 콘솔 URL의 포트를 보시면 아시겠지만, 저희 프로젝트에서 db가 만들어진 것이 아닙니다. 이에 대해서는 아래를 읽어주세요) 제가 H2 경험이 별로 없어서 해당 방식이 Embedded, In memory, Server 모드 3가지 중 어떤 방식인지 잘 모르지만 서버 방식으로 추측됩니다. 서버 방식은 H2를 따로 외부에서 띄워 놓고 접근해서 사용하는 것을 말하는 것 같은데요. 그렇기 때문에 저희가 만들어 놓은 프로젝트 URL인 localhost :{랜덤포트}/h2-console 에서 H2 사용 시 Embedded로 선택하여 Embedded 모드로 실행하면 연결 오류가 그대로 발생합니다. 그래서 강의와는 다르게 아래 이미지처럼 Server를 선택하여 외부(여기서는 프로젝트 외부에서 H2를 따로 동작시켜 db를 만들어준 것을 말함)의 H2에 접근하도록 연결해야 합니다. 연결 방법은 아래와 같이 URL을 적어주면 됩니다. Saved Settings와 JDBC URL 입력 항목을 유의해주세요. 이렇게 설정해준 후, Test Connection 버튼을 눌러보면 연결 테스트가 성공한 것을 확인할 수 있습니다. 마찬가지로 연결 버튼을 클릭해보면 연결도 잘 됩니다. 이제 이 상태에서 강의를 이어서 진행하면 문제 없을 것입니다. ※ 추가적으로, 외부에서 서버를 켜놓고 접속하는 것이기 때문에 오른쪽 트레이의 H2 Database Engine을 우클릭하여 종료하면 프로젝트의 H2 콘솔에서 연결이 불가합니다. 그러니 프로젝트 작업 시에는 트레이를 종료하지 않도록 유의해주세요. ※ 그리고, H2 Engine을 따로 받아서 서버 모드로 사용하면 DB 상태가 유지되지만, 이 방법은 프로젝트의 h2 jar 파일을 통해 진행하다보니 DB 상태가 유지되는지 알 수 없습니다. 오른쪽 트레이에서 H2를 재실행시키면 다시 DB를 만들어야 하는 것 같더라고요. 참고 부탁드려요~ [추가] Users Microservice - JPA①, ② 강의에서 H2 DB에 연결해 DB를 연결해주는데요. 위의 과정은 Embedded가 아닌 Server 로 처리하기 때문에 설정이 다릅니다. application.yml 파일에서 아래와 같이 설정해주세요. 유의하실 부분은 spring.datasource.url 부분과 spring.jpa.generate-ddl 부분입니다. url 만으로는 처리가 안되길래 jpa에서 db 생성하도록 generate-ddl을 true로 설정하였습니다. spring: application: name: user-service h2: console: enabled: true settings: web-allow-others: true path: /h2-console datasource: driver-class-name: org.h2.Driver url: jdbc:h2:tcp://localhost/mem:testdb username: sa jpa: generate-ddl: true
본 강의에서 알려주신 판다스 및 이미지 활용 예제를 알려주셔서 감사합니다. 강의 후반에 알려주신 것 처럼 활용 할 수 있는 부분이 굉장히 많아 보입니다. 판다스 예제를 views.py에 녹여 봤는데, 잘 출력됩니다 ㅎㅎ 이후 템플릿 폴더 내부 html 파일을 생성해서 디자인 좀 추가해 출력하면 분석 툴 제작도 충분히 가능할 듯 싶네요. 강의 중반까지 듣고 시도해 보겠습니다 :)
초반 h2 database 접근 시에 embedded mode 접근 시에는 잘 되는데, (jdbc:h2:~/jpashop) server mode 접근 시에 (jdbc:h2:tcp://localhost/~/jpashop) 접근이 안 되는 문제가 있었습니다. Connection is broken: "java.io.EOFException: localhost" [90067-199] 90067/90067 (도움말) 와 같은 오류가 나는 것으로 보아 접근이 안 되는 것 같아 보였고요, 해서 직접 h2 database 를 기동해 보았는데 Web Console server running at http://localhost:8082 (others can connect) TCP server running at tcp://localhost:51689 (others can connect) PG server running at pg://localhost:5435 (only local connections) 위와 같이 tcp server 는 51689 포트로 뜨는 것을 확인했고, localhost: 51689 로 변경하여 접속하여 해결 되었습니다. 실행시에 tcpPort 옵션으로 변경하여 실행이 가능하므로, 고정 포트로 테스트하였습니다. `java -jar "$dir/h2-1.4.199.jar" -webAllowOthers -tcpAllowOthers -tcpPort 8043` 으로 했습니다. 삽질 공유 드립니다.