묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[리뉴얼] 맛집 지도앱 만들기 (React Native & NestJS)
2-5 강의 에러 (react-native-reanimated 설치 후 에러)
환경 : 맥, 안드로이드버전 : react-native 0.72.6node 22.11.0깃허브 : https://github.com/taeyun01/react-native-map안녕하세요!2-5 강의 질문도 보고 구글에도 쳐보고 했지만 계속 해결이 안되어 문의 드립니다 ㅠ시도해본것node_modules 삭제Drawer Navigator 패키지 삭제 후 재설치설치 후 npx react-native run-iosyarn installreact-native-reanimated/plugin 추가npx react-native start --reset-cache터미널 에러 전체 (에러가 너무 길어 작성이 안되어 메모장 링크로 첨부드립니다.)https://n.lrl.kr/NkN4aH 안드로이드 에뮬레이터 화면 에러package.json{ "name": "foodMap", "version": "0.0.1", "private": true, "scripts": { "android": "react-native run-android", "ios": "react-native run-ios", "lint": "eslint .", "start": "react-native start", "test": "jest" }, "dependencies": { "@react-native-masked-view/masked-view": "^0.3.2", "@react-navigation/drawer": "^7.0.11", "@react-navigation/native": "^7.0.4", "@react-navigation/stack": "^7.0.6", "react": "18.2.0", "react-native": "0.72.6", "react-native-gesture-handler": "^2.21.2", "react-native-reanimated": "^3.16.2", "react-native-safe-area-context": "^4.14.0", "react-native-screens": "^4.3.0" }, "devDependencies": { "@babel/core": "^7.20.0", "@babel/preset-env": "^7.20.0", "@babel/runtime": "^7.20.0", "@react-native/eslint-config": "^0.72.2", "@react-native/metro-config": "^0.72.11", "@tsconfig/react-native": "^3.0.0", "@types/react": "^18.0.24", "@types/react-test-renderer": "^18.0.0", "babel-jest": "^29.2.1", "eslint": "^8.19.0", "jest": "^29.2.1", "metro-react-native-babel-preset": "0.76.8", "prettier": "^2.4.1", "react-test-renderer": "18.2.0", "typescript": "4.8.4" }, "engines": { "node": ">=16" } }
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
blue/green 배포 전략 설정에 대해 질문 있습니다.
안녕하세요.덕분에 ecs와 ci/cd에 대해 재미있게 실습을 해볼 수 있었고 이에 대해 감사의 말을 전달드리고 싶습니다. 강의를 완강하고 현업에서 blue/green 배포 전략을 사용할 때 배포하면 codeDeploy에 들어가서 확인하던 것이 생각나서 구글링을 해보았습니다.그 결과 ecs를 blue/green 배포하려면 따로 옵션을 선택하고 결국 codeDeploy로 연결되더라구요.해당 강의(ECR private repository 이미지로 AWS ECS service 생성하기)에서는 ecs service 생성 시 따로 배포옵션설정을 건드시지 않는데 그렇다면 그렇다면 기본 옵션인 rolling 전략이 아닌 것인지 궁금합니다!
-
미해결실무에 바로 적용하는 프런트엔드 테스트 - 1부. 테스트 기초: 단위・통합 테스트
setup, teardown 동작 순서
안녕하세요!setup, teardown 강의를 보며 실습하고 있습니다.beforeAll 내에 console이 첫번째로 찍히다가 afterAll과 함께 사용할 경우에는 afterAll 바로 직전(마지막 바로 앞)에 찍히고 있습니다. (afterAll을 지울 경우에는 첫번째로 찍히고 있습니다.) beforeEach는 it을 실행하는 횟수만큼 실행되는거 같은데요. describe내에 선언한 beforeEach는 describe내에 호출한 it의 횟수만큼 실행되는게 맞는거 같은데 root의 beforeEach, afterEach도 it의 횟수만큼 실행되는게 맞을까요?제가 사용한 코드와 출력화면 입니다.import { screen } from '@testing-library/react'; import React from 'react'; import TextField from '@/components/TextField'; import render from '@/utils/test/render'; beforeEach(() => { console.log('2. root - beforeEach'); }); beforeAll(() => { console.log('1. root - beforeAll'); }); afterEach(() => { console.log('5. root - afterEach'); }); afterAll(() => { console.log('6. root - afterAll'); }); describe('placeholder', () => { beforeEach(() => { console.log('3. placeholder - beforeEach'); }); afterEach(() => { console.log('4. placeholder - afterEach'); }); it('기본 placeholder "텍스트를 입력해 주세요."가 노출된다.', async () => { await render(<TextField />); const textInput = screen.getByPlaceholderText('텍스트를 입력해 주세요.'); expect(textInput).toBeInTheDocument(); }); it('placeholder prop에 따라 placeholder가 변경된다.', async () => { await render(<TextField placeholder="상품명을 입력해 주세요." />); const textInput = screen.getByPlaceholderText('상품명을 입력해 주세요.'); expect(textInput).toBeInTheDocument(); }); }); /** 실행 결과 2. root - beforeEach 3. placeholder - beforeEach 4. placeholder - afterEach 5. root - afterEach 2. root - beforeEach 3. placeholder - beforeEach 4. placeholder - afterEach 5. root - afterEach 1. root - beforeAll 6. root - afterAll */
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
MemberServiceTest 이게 왜 틀리죠?
package jpabook.jpashop.service; import jpabook.jpashop.domain.Member; import jpabook.jpashop.repository.MemberRepository; import org.assertj.core.api.Assertions; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.transaction.annotation.Transactional; //@ExtendWith(SpringExtension.class) //@SpringBootTest에 이미 정의됨.(중복) @SpringBootTest @Transactional class MemberServiceTest { @Autowired MemberService memberService; @Autowired MemberRepository memberRepository; @Test public void 회원가입()throws Exception{ //given Member member=new Member(); member.setUsername("kim"); //when Long savedId = memberService.join(member); //then Assertions.assertThat(member).isEqualTo(memberRepository.findOne(savedId)); } }junit 5 버전이라 이렇게 고쳤는데도 테스트에 실패합니다. setUsername은 구버전 MemberRepository에서 오류가 나서 Member의 name을 username으로 바꿨습니다.test/resources/application.yml에spring: logging.level: org.hibernate.SQL:debug이것도 넣어줬는데 안됩니다
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
구조 분해 할당에서 변수가 더 많이 존재하는 상황은 어떤 경우인가요??
2.3) 구조분해할당 강의의 배열의 구조 분해 할당과 객체의 구조 분해 할당 모두 아래 코드의 four와 extra와 같이 추가적으로 존재하지 않는 변수를 만드셨는데요.이렇게 할당 받을 값보다 할당 받을 변수가 더 많은 경우가 실제로도 사용이 되나요?? 사용이 된다면 어떤 목적으로 사용이 되나요?let arr = [1, 2, 3]; let [one, two, three] = arr;let person = { name: "이름", age: 24, }; let { name, age, extra, } = person;
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
교재 크로스벨리데이션, 하이퍼파라미터 관련 질문
1. 교재 작업2 다중분류 약물종류 예측에서크로스벨리데이션으로 평가하는 방법이 나와있는데 제가 이해한게 맞는지 질문드립니다.from sklearn.metrics import f1_score from sklearn.model_selection import cross_val_score from sklearn.ensemble import RandomForestClassifier model = RandomForestClassifier(random_state = 0) f1 = cross_val_score(model ,train, target ,cv=3 , scoring="f1_macro")마지막 한줄에서 cross_val_score가 train , target을 3(cv=3)덩어리로 나눈 후각 덩어리?를 model을 통해 학습한 후 나머지 데이터로 평가하여 f1_macro로 각각의 평가지표가 계산되는것이고,이후 앞으로 돌아가 전처리 등을 통해서 평가지표를 향상할 수 있도록 해본 후에최종 제출하기 전에마지막에 model.fit(train,target)을 통해서 전체 train, test로 다시 학습을 시킨 후 제출을 하는 과정이 맞을까요?이 문제에서 총 train 데이터가 100개라 그런지 f1이 1이 나오길래검증 데이터수가 너무 적어서 점수가 높게 나왔다고 생각하여 test_size를 0.3로 변경하고 진행을 하였습니다. 이런식으로 하는 방법은 train 데이터 수가 작아지기 때문에 옳은 방법이 아닌걸까요? 3. 하이퍼파라미터 max_depth , n_estimators 등은 lightgbm, 랜포에서 동일하게 사용하는걸까요? lightgbm에 대한 하이퍼파라미터 튜닝은 다루지 않은것 같아서요(아직 기출 강의는 듣지 않아서 강의에서 다뤘을지도 모르겠습니다..)1)튜닝을 하는 경우에는 데이터셋에 과적합 우려가 있기 때문에 cross_val_score을 사용하는것이 나아보이기도 하고, 2)튜닝값이 분할된 각 데이터셋에 적용되는 것이므로 , 마지막에 전체 데이터로 다시 학습시키는 과정에서 동일한 튜닝값이 적용되면 더 안좋아질 수도 있을 것 같은데 1) 2) 중 어느것이 옳은 생각일까요?train_test_split을 이용하는 경우 전처리 + X_tr, y_tr을 통해 학습한 모델로 검증한 후 마지막에 전체 train, target으로 다시 학습시키는게 더 좋을 것 같은데(데이터 양의 증가), 튜닝을 한 경우에는 X_tr, y_tr로 학습한 모델로 제출을 하는 것이 옳을까요?train_test_split을 했을때 하이퍼 파라미터 튜닝으로 f1이 0.61 ->0.65로 올라갔으나,cross_val_score에서 같은 튜닝값을 적용하니 f1이 0.71 -> 0.69으로 내려갔습니다. 이런 경우 튜닝전후 어떤 값으로 제출하는게 좋을까요? 시험이 며칠 안남기는 했지만 cross_val_score을 익숙하게 쓸 수 있으면 시험에서도 train_test_split 대신 cross_val_score을 사용하는게 좋을까요? 아니면 train_test_split으로만 검증해도 상관없을까요질문이 많아서 죄송합니다.감사합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
2회 기출 작업형2 결과값
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요아직 강의 보기전 혼자 풀어보았을때 결과가 이런식으로 다르게 나온다면 코드에서 잘못된 부분이 있는거겠죠ㅠㅠ?검증데이터로는 roc_auc_score 0.75 나옵니다(오류없이 실행은 되는데 결과 확률이 다르게 나옵니다ㅠ)
-
미해결[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발
post가 안되요
"Required request body is missing: public kr.co.joneconsulting.myrestfulservice.bean.User kr.co.joneconsulting.myrestfulservice.controller.UserController.createUser(kr.co.joneconsulting.myrestfulservice.bean.User)", 이런 에러가 뜨네요 @PostMapping("/users") public User createUser(@RequestBody User user) { return service.save(user); }
-
해결됨한 번에 끝내는 자바스크립트: 바닐라 자바스크립트로 SPA 개발까지
regionList 클릭시 해당 cities가 안나옵니다.
혼자서 찾아보려고 했는데 도저히 모르겠네요 ㅜ 오류메세지는 나오는건 없고 제목과 같습니다. region을 선택하면 해당 cities가 나와야하는데 안나와요 ㅜ import Header from "./components/Header.js"; import RegionList from "./components/RegionList.js"; import CityDetail from "./components/CityDetail.js"; import CityList from "./components/CityList.js"; import { request } from "./components/api.js"; export default function App($app){ const getSortBy = () => { if (window.location.search){ return window.location.search.split('sort=')[1].split('&')[0]; } return 'total'; }; const getsearchWord = () => { if(window.location.search && window.location.search.includes('search=')){ return window.location.search.split('search=')[1] } //뒤에 있는 값을 반환 return ''; }; this.state={ startIdx : 0, sortBy : getSortBy(), region: '', searchWord: getsearchWord(), cities:'', }; const header = new Header({ $app, initialState:{ sortBy:this.state.sortBy, searchWord:this.state.searchWord }, handleSortChange: async(sortBy) => { const pageUrl = `/${this.state.region}?sort=${sortBy}`; history.pushState( null, null, this.state.searchWord ? pageUrl + `&search=${this.state.searchWord}` : pageUrl ); //변경된 정렬기준을 적용한 새로운 데이터를 불러옴 (매개변수로 전달받은 새로운 정렬기준인 sortBy 값을 넣어야함) const cities = await request(0, this.state.region, sortBy, this.state.searchWord); // 변경된 상태값을 업데이트 this.setState({ ...this.state, startIdx:0, sortBy: sortBy, cities: cities, }); }, handleSearch: async(searchWord) => { //웹사이트 주소를 알맞게 변경 history.pushState( null, null, `/${this.state.region}?sort=${this.state.sortBy}&search=${searchWord}` ); const cities = await request(0, this.state.region, this.state.sortBy, searchWord); this.setState({ ...this.state, startIdx:0, searchWord: searchWord, cities: cities }) }, }); const regionList = new RegionList({ $app, initialState:this.state.region, handleRegion: async(region) => { history.pushState(null, null, `/${region}?sort=total`); const cities = await request(0, region, 'total'); console.log("cities",cities) this.setState({ ...this.state, startIdx: 0, region: region, sortBy: 'total', cities: cities, searchWord: '', }); }, }); const cityList = new CityList({ $app, initialState:this.state.cities, // 아래는 더보기 버튼을 눌렀을 때 실행되는 것 handleLoadMore: async() => { const newStartIdx = this.state.startIdx + 40; const newCities = await request(newStartIdx, this.state.region, this.state.sortBy, this.state.searchWord); this.setState({ ...this.state, startIdx : newStartIdx, cities:{ cities:[...this.state.cities.cities, ...newCities.cities], isEnd: newCities.isEnd, } }) } }); const cityDetail = new CityDetail(); this.setState = (newState) => { this.state = newState; cityList.setState(this.state.cities); header.setState({sortBy:this.state.sortBy, searchWord:this.state.searchWord}); regionList.setState(this.state.region); }; const init = async() => { const cities = await request(this.state.startIdx, this.state.sortBy, this.state.region, this.state.searchWord); this.setState({ ...this.state, cities: cities, //api 호출의 결과인 cities }); }; init(); } export default function RegionList({$app, initialState, handleRegion}){ this.state = initialState; this.$target = document.createElement('div'); this.$target.className = 'region-list'; this.handleRegion = handleRegion; $app.appendChild(this.$target); this.template = () => { const regionList = [ '🚀 All', '🌏 Asia', '🕌 Middle-East', '🇪🇺 Europe', '💃 Latin-America', '🐘 Africa', '🏈 North-America', '🏄 Oceania', ]; let temp = ``; regionList.forEach((elm) => { let regionId = elm.split(' ')[1]; temp += `<div id=${regionId}>${elm}</div>`; }); return temp; }; this.render = () => { this.$target.innerHTML = this.template(); let $currentRegion; if(this.state){ $currentRegion = document.getElementById(this.state); $currentRegion && ($currentRegion.className = 'clicked'); } else { document.getElementById('All').className = 'clicked'; } const $regionList = this.$target.querySelectorAll('div'); $regionList.forEach((elm) => { elm.addEventListener('click', () => { this.handleRegion(elm.id); }); }); }; this.setState = (newState) => { this.state = newState; this.render(); }; this.render(); }
-
미해결진짜 현업에서 쓰이는 직장인의 실무 엑셀 - 데이터 가공부터 분석까지
웹 주소로 데이터를 끌어오면 설명과 다르게 나옵니다
안녕하세요2강에서 네이버증권(강의에서 나오는 것과는 이름은 바뀌었더군요) 주소를 가져와서 웹 주소를 입력하면 아래와 같이 부정확한 데이터로 끌어와지는데 어떤 차이가 있는 것일까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요# F1 스코어(F1 Score) *** 숫자 문자 차이 없음 from sklearn.metrics import f1_score f1 = f1_score(y_true, y_pred, average='macro') # average= micro, macro, weighted print("F1 스코어:", f1) f1 = f1_score(y_true_str, y_pred_str, average='macro') print("F1 스코어:", f1) *RMSE(Root Mean Squared Error) *** from sklearn.metrics import mean_squared_error mse = mean_squared_error(y_true, y_pred) rmse = mse ** 0.5 print("RMSE:", rmse)F1 스코어 : f1 = f1_score(y_true, y_pred, average='macro' 여기서 y_true RMSE: mse = mean_squared_error(y_true, y_pred) 여기서 y_true 두 y_ture 모두 y_val 값을 말하는게 맞나요??
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
연관관계 매핑 기초에서
단방향 매핑만으로도 충분하고 필요할떄 양방향으로 설계하라고하셨는데 단방향 매핑만하고 JPQL로 역방향으로 조회가 가능하다는 말씀이신가요? 제가 이해한건 양방향으로 굳이 안하고 단방향으로 설계했을때 JPQL을 사용해서 역방향으로 조회가 가능하다?이말씀이신가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
검증데이터셋으로 훈련 및 검증 후 다시 훈련(fit) 여부
안녕하세요,6회 기출 유형 작업형2 풀이에서 마지막에 최종 제출 파일에서rf.fit(train, target)으로 다시 훈련한 후에pred = rf.predict(test)로 예측을 하시더라구요, 저는 기존의 강의에서 from sklearn.ensemble import RandomForestClassifier rf = RandomForestClassifier(random_state=2013) rf.fit(X_tr, y_tr) pred = rf.predict(X_val)이렇게 검증데이터 셋으로 훈련 후에 바로 pred = rf.predict(test)로 예측을 했었거든요,최종 파일 제출할 때는rf.fit(train, target)으로 다시 훈련한 후에pred = rf.predict(test) 예측을해야하는 것일까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
기출 7 작업형 1 관련 문의입니다.
ValueError: Length of values (1) does not match length of index (33)와 같은 오류가 뜨는 이유를 잘 모르겠습니다. 실행한 코드입니다. import pandas as pd df = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/refs/heads/main/p4/7_1/student_assessment.csv") df = df.dropna() df['id_assessment'].value_counts() print(df.head(10)) con = df['id_assessment'] == 12 df = df[con] from sklearn.preprocessing import StandardScaler ss = StandardScaler() df['score'] = ss.fit_transform([df['score']])
-
미해결Practical Testing: 실용적인 테스트 가이드
@Value 관련 환경변수 주입 테스트코드 질문..
@ActiveProfiles("test") @SpringBootTest class CategoryServiceTest { @Autowired private CategoryService categoryService; @DisplayName("카테고리 목록들을 조회한다.") @Test void getAllCategories() { System.out.println("222222222222222222"); } }@Service @RequiredArgsConstructor public class KakaoApiService { @Value("${social.kakao.apikey}") private String kakaoApiKey; @Value("${social.kakao.redirect_uri}") private String kakaoRedirectUri; }위와 같이 코드가 있을때 테스트 코드를 실행시키면Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'kakaoApiService': Injection of autowired dependencies failed다음과 같은 에러가 발생하는데,, @SpringBootTest를 돌릴때 환경변수 주입을 못받아서 실패하는것 같은데 이럴 경우 어떻게 테스트를 진행해야할까요 ?? 전혀 관련 없는 서비스인데 에러가 터져서 진행이 안됩니다 ㅜㅜ..```ymlspring: profiles: default: local social: kakao: apikey: ${KAKAO_API_KEY} redirect_uri: ${KAKAO_REDIRECT_URI} jwt: secret: ${JWT_SECRET} access_expiration_time: 36000000 --- # 테스트 환경 spring: config: activate: on-profile: test h2: console: enabled: true datasource: url: jdbc:h2:mem:~/ChallengeApplication driver-class-name: org.h2.Driver username: sa password: jpa: hibernate: ddl-auto: create show-sql: true properties: hibernate: format_sql: trueyml은 전체는 아니지만 이렇게 구성되어 있습니다.환경 변수주입은 ChallengeApplication에 다 넣어놨는데, 이게 테스트코드를 돌릴시에는 ChallengeApplication가 도는게 아니라 Junit 하위에 있는게 돌아서 환경변수 주입이 안된게 돌아서 실행이 안되더라구요 .. 보통 어떤식으로 하시나요 ? ㅠㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
test 데이터 예측 결과에서 한 값만 튀는데 이럴 수 있는건가요?
3-5 마지막 문제 중 평가 데이터로 예측하는 부분에서 이런 결과가 나왔습니다. 어떤 부분을 놓쳤는지 모르겠지만 강사님의 예측 결과랑 완전 똑같진 않아요. 그래도 첫번째 자리수까지는 똑같은데요.. 문제는 id가 4213인 값이 혼자 튀는데 이런 경우도 있을 수 있나요? 아니면 제가 뭘 잘못한건가요? 정확도 평가는 88% 나왔습니다.
-
미해결[켠김에 출시까지] 유니티 방치형 키우기 게임 (M1 + C1)
섹션 4(SaveData, HeroList, ItemData, ItemHolder)에 일부 항목들에 대한 재생오류 해결 부탁드립니다.
섹션 4Project M1 - 성장 컨텐츠 제작(재화, 성장, 아이템, 퀘스트, ...) 에속한 SaveData, HeroList, ItemData, ItemHolder 이쯤부터 전부 재생이 안됩니다.꽤 종종 이런 재생 오류 문제가 발생합니다.한주에만 이런문제를 겪은게 3회정도 된거같습니다.다음날 재생하면 또 되는경우가 존재하고, 너무 불편합니다. 인프런 운영사분들 제발 쾌적한 재생환경을 부탁드려요 ..강의듣는 와중에, 흐름이 끊길때마다 너무 불편합니다... 강의는 잘듣고 있습니다..
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
RestAuthenticationToken의미 token의 의미
RestAuthenticaionToken 클래스를 만든 의미가 궁금하고 여기 시큐리티에서 token의 의미가 무엇인지 궁금합니다
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
독립표본검정에서요
두 집단의 분산이 같은지 다른지 여부를 모를때 shapiro 검정을 통해 정규성 만족 여부 확인1-1) 정규성을 만족한다면 levene 검정을 통해 등분산 검정을 한다. 등분산 검정 시 0.05보다 크다면 귀무가설 채택(등분산이다) 0.05보다 작으면 대립가설 채택(등분산이 아니다) 1-2) ttest_ind 진행stats.ttest_ind(a,b,equal_var = True) <- 레빈검정 귀무채택시stats.ttest_ind(a,b,equal_var = False) <- 레빈검정 귀무기각 시 정규성을 만족하지 않는다면stats.manwhitneyu(a,b,alternative = 'less') 진행 문의내용위 순서로 진행하는게 맞는건지 문의드리며만 휘트니 검정할때는 만 휘트니 검정 자체가 정규성 불만족할때의 ttest와 같다고 생각하면 되는건지 문의드립니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 - 8회 오류
--------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-32-9c792161035b> in <cell line: 2>() 1 # 최종 제출 파일 ----> 2 pred = rf.predict(test) 3 result = pd.DataFrame({'pred':pred}) 4 result.to_csv('result.csv', index=False) 3 frames/usr/local/lib/python3.10/dist-packages/sklearn/base.py in _check_feature_names(self, X, reset) 533 ) 534 --> 535 raise ValueError(message) 536 537 def _validate_data( ValueError: The feature names should match those that were passed during fit. Feature names unseen at fit time: - customerID_CUST0001 - customerID_CUST0002 - customerID_CUST0006 - customerID_CUST0007 - customerID_CUST0008 - ... Feature names seen at fit time, yet now missing: - customerID_CUST0000 - customerID_CUST0003 - customerID_CUST0004 - customerID_CUST0005 - customerID_CUST0009작업형 2 한가지 방법으로 풀어보기를 그대로 해서 8회를 풀엇는데, 이런 에러가 뜹니다. id 값을 없애는 작업을 해줘야할까요?