안녕하세요 강사님! [3-4 Feature engineering.ipynb] 파일 복습 중에 # train, test 합쳐서 인코딩 후 분리하기 cols = list(X_train.columns[X_train.dtypes == object]) print(X_train.shape, X_test.shape) all_df = pd.concat([X_train, X_test]) all_df = pd.get_dummies(all_df[cols]) line = int(X_train.shape[0]) X_train = all_df.iloc[:line,:].copy() X_train X_test = all_df.iloc[line:,:].copy() X_test print(X_train.shape, X_test.shape) 이부분에서 '원핫인코딩' 대신 '레이블인코딩'을 하면 어떻게 해야될지 의문점이 생겼습니다. 레이블 인코딩시에는 train데이터에는 fit_transform() 을 하고 test 데이터에는 transform() 을 하는 것으로 알고 있는데 X_train 데이터와 X_test 데이터를 합쳤을 때는 fit_transform(), transform() 둘 중 어떤 것을 사용하고나서 분리해야되는지 궁금해서 질문 드립니다! 아래는 fit_transform()을 이용해서 구현해본 코드입니다. X_train.shape, X_test.shape df = pd.concat([X_train, X_test]) df.select_dtypes(include='O').columns c_cols = ['workclass', 'education', 'marital.status', 'occupation', 'relationship', 'race', 'sex', 'native.country'] df.select_dtypes(exclude='O').columns n_cols = ['age', 'fnlwgt', 'education.num', 'capital.gain', 'capital.loss', 'hours.per.week'] from sklearn.preprocessing import LabelEncoder for col in c_cols: le = LabelEncoder() df[col] = le.fit_transform(df[col]) line = len(X_train) X_train = df.iloc[:line,:].copy() X_test = df.iloc[line:,:].copy() print(X_train.shape, X_test.shape)
코드 1 model.fit(train[cols], target)라고 X_val값에 train[cols]을 대입한 걸로 이해했는데, 코드2 검증용 데이터의 train은 라벨인코더가 된 cols가 포함된 train 값이라 그냥 train으로 적은 건가요? 갑자기 헷갈려서 여쭤봅니다 ㅠㅠ,,,..
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요! 혹시 다대다의 경우는 중간테이블을 두어 푸는 것이 실무에서 필수적이라 했는데, 일대 다의 경우에도 비즈니스 로직 분리 : 중간 테이블을 통해 비즈니스 로직(보상 분배, 순위 계산 등)을 별도로 관리함으로써, 엔티티 간의 복잡성을 줄입니다. 데이터의 독립적 관리 : 과거 랭킹 기록, 보상 내역 등 변경하지 않아야 할 데이터를 독립적으로 저장하고 관리할 수 있습니다. 이런 이유로 중간테이블을 두기도 하나요? 예를 들어 사용자와 랭크 관계가 일대 다인 상황에서(사용자는 한 랭크만 참가 가능) 과거 정보들을 저장하기 위해 중간테이블을 두고 거기에 전적 같은 정보를 저장하고자 하는데 이런 경우 일대 다임에도 중간테이블을 놔두어 관리해도 되나요?
Entity들의 id를 따로 Column으로 name을 지정해주지 않아도 괜찮나요?? 연관관계 매핑할 때 예를 들어 MEMBER랑 TEAM을 매핑하면 MEMBER의 FK 이름은 TEAM_ID인데 TEAM의 PK는 ID라서 TEAM의 ID를 TEAM_ID로 바꾸지 않아도 괜찮은건가요??
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 이전에 들었던 실전! JPA1편에서는 https://start.spring.io/ 이곳에서 다운로드 하고 설치했는데 이번 강의에선 왜 따로 소스코드를 주시고 시작했는지 궁금합니다! 단순하게 springBoot를 사용하지 않아서인가요? 아니면 초기 설정이 힘들어서인가요?
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 시험환경에서 sum, len 등 함수 사용시 numeric_only=True 입력하지않아도 결과가 나오는데 무조건 적어야하는걸까요?
안녕하세요. 강사님 강사님 덕분에 코루틴에 대한 이해도가 많이 높아져서, 최근 코루틴을 활용한 비동기 서버 구현에 대해서 재밌게 개발을 하고 있습니다. (코루틴이 재미는 있는데, 비동기라는 개념 때문에 너무 어려워서 머리가 아프네요 😢 ) spring webflux와 코루틴을 활용한 서버 개발을 하다보니, 자연스럽게 suspend 키워드가 많이 사용되고 일시 중단 함수에 대해서 조금 더 높은 이해도가 필요해서 이에 대해서 몇가지 질문을 하려고 합니다. 1.저는 강사님의 일시 중단 함수 관련 강의를 듣고 일시 중단 함수란 그냥 일시 중단 지점을 포함할 수 있는 특이한 함수 , suspend 함수에서 코루틴을 사용하기 위해서는 coroutineScope을 사용하자 이렇게 이해를 했어서 다음과 같이 코드를 짰습니다. class SuspendRequestTest { @Test fun suspendRequestTest() = runBlocking { val startTime = System.currentTimeMillis() // 시작 시간 기록 println("suspendRequest start") anotherSuspendFunction1() // suspend function 1 호출 anotherSuspendFunction2() // suspend function 2 호출 println("suspendRequest end") val endTime = System.currentTimeMillis() // 종료 시간 기록 println("suspendRequest elapsed time: ${endTime - startTime} ms") // 경과 시간 출력 } private suspend fun anotherSuspendFunction1() = coroutineScope { println("anotherSuspendFunction1 start") launch { println("anotherSuspendFunction1 extra logic start") delay(1000) println("anotherSuspendFunction1 extra logic end") } println("anotherSuspendFunction1 end") } private suspend fun anotherSuspendFunction2() = coroutineScope { println("anotherSuspendFunction2 start") launch { println("anotherSuspendFunction2 extra logic start") delay(1000) println("anotherSuspendFunction2 extra logic end") } println("anotherSuspendFunction2 end") } } // 실행 로그 suspendRequest start anotherSuspendFunction1 start anotherSuspendFunction1 end anotherSuspendFunction1 extra logic start anotherSuspendFunction1 extra logic end anotherSuspendFunction2 start anotherSuspendFunction2 end anotherSuspendFunction2 extra logic start anotherSuspendFunction2 extra logic end suspendRequest end suspendRequest elapsed time: 2037 ms 제 예상대로라면 1초가 살짝 넘는 시간으로 작업이 완료되어야 하는데, 해당 작업은 2초가 걸리는 작업이었습니다. (로그도 항상 1번이 먼저 나타납니다.) 1-1) 혹시 coroutineScope 은 내부의 코드가 완료되기 전까지는 다음으로 넘어가지 않는 Blocking 속성을 가지는 함수일까요 ? 1-2) supervisorScope 도 coroutineScope 처럼 내부의 코드가 완료되기 전에는 다음으로 넘어가지 않는다고 알면 될까요? 1-3) 일시 중단 함수가 여러 일시 중단 함수들을 내부 로직으로 가지는 경우, 순차적으로 각각의 일시 중단 함수가 끝나야지만 다음 일시 중단 함수가 실행되는 걸까요 ? 2.제가 실제 코루틴 사용 사례 및 코드를 많이 보지 못해서, 어떻게 쓰는게 좋은 케이스 인지 이해도가 낮은 것 같습니다. 보통 coroutineScope 혹은 supervisorScope 함수들은 어떤 경우에 어떤 목적을 위해 주로 쓰이는 걸까요 ?? coroutineScope 의 속성이나 특징에 관해서 추가적으로 제가 알아야 하거나 참고하면 좋을 자료가 있을까요?? 😊
안녕하세요. 강사님 강의내용을 좀 더 눈에 들어오게 만들고 싶어 아래와 같이 표로 정리했습니다. 두 가지 질문이 있습니다. 질문1) 표로 분류한 것처럼 한 체크예외에 복구가능/복구불가 , 한 언체크예외에 복구가능/복구불가 분류가 가능한가요? 체크예외 복구 가능한 예외 복구 불가능한 예외 언체크예외 복구 가능한 예외 복구 불가능한 예외 질문2) 언체크예외 특징을 위 표로 정리를 했음에도 강의에서 문서화를 강조하신 이유를 파악하지 못했습니다. 개발자가 개발당시 미래에 실행중에 어떤 런타임예외가 발생할 지 모르기 때문에 즉, 런타임예외 모든 경우의수를 예측하기 어렵기 떄문에 '처리'를 하지 못한다고 이해해도 될까요? 따라서 운영중에 마주하게 되는 런타임예외들을 매 순간마다 문서에 기록해두라는 말씀이신지 궁금합니다.
8회 기출에서 민맥스 스케일링 풀이에서는 from sklearn.preprocessing import MinMaxScaler scaler=MinMaxScaler() 민맥스스케일러를 스케일러로 받아와서 풀이하잖아요 전~에 앞쪽에서 풀이 해주신 코드로 외워서 저는 from sklearn.preprocessing import minmax_scale 로 바로 df['특정컬럼']=minmax_scale(df['특정컬럼']) 이렇게 하는게 더 쉬워서 이걸로 외워져서 풀었는데 혹시 스탠다드 스케일링도 저렇게 바꿔 쓰는 import 가 있나요!? ㅜㅜ from sklearn.preprocessing import StandardScaler scaler=Standardscaler() df[' ']=scaler.fit_transform(df[[' ']]) 이렇게 sclaer 로 받아오는 풀이밖에 없나용 ㅠㅠ import 뒤를 살짝씩 바꿔봐도 다 오류가 뜨네요 ㅜ ㅜ
디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
안녕하세요. sram 소스 코드를 위처럼 작성해봤는데, mem에 저장이 안돼서 read도 제대로 안되고 아래처럼 시뮬레이션 파형이 나옵니다. 테스트벤치는 주신 자료대로 작성했고 소스코드만 제가 작성해봤는데, 주신 소스코드랑 비교해봤을 때도 크게 다른 부분을 모르겠어서요. 코드의 어느 부분이 잘못됐는지 알려주시면 감사하겠습니다!
안녕하세요 라벨인코딩 시 질문이 있어 글 남깁니다. 첫번째질문 cols에 select_dtypes()로 컬럼명 담을 때, cols = train.select_dtypes(include='object') cols = train.select_dtypes(include='object').columns for col in cols: le = LabelEncoder() train[col] = le.fit_transform(train[col]) ... ... 첫 번쩌 cols와 두 번째 cols 중 둘 다 상관 없나요? 아니면 두 번째로 해야 하나요?? 두번째질문 그리고 (아직까진 시험에는 나온 적은 없는 걸로 압니다만) train.describe(include='object') 이처럼 범주형 변수 유니크 값 확인 시, train 과 test 의 유니크 값이 다르면 라벨인코딩을 진행 하는 것으로 알고 있는데요. 어쩔 땐 concat 으로 합치고 후 원핫인코딩 후 다시 분리 하라고 하는데, 그냥 유니크 값이 다르면 라벨인코딩 진행을 바로 하면 될까요? 강사님 강의 중 concat 사용하는 부분이 있었던 것 같은데 못 찾고 있어서 질문 남깁니다..
안녕하세요, 강사님! 8회 작업형 2 문제에서, customerID 컬럼은 중복된 ID값이 없이 모두 고유한 값이어서 제거를 해도 상관없지만,중복값이 있는 ID는 제거를 하면 안된다고 하셨는데요! 그렇다면, 실제 시험에서 중복값이 있는 ID가 나온다면 그 컬럼은 전처리를 하지 않고 그냥 두어도 상관없을까요? 상황1)중복값이 있는 ID컬럼이 'object'값일때 제거를 하는게 나을까요? 아니면 int형으로 변환하여 모델학습에 넣어야할까요? 또는 라벨인코딩을 해야하는 것일까요? 상황2)중복값이 있는 ID컬럼이 'int/float'값일때 제거하는게 나을까요? 라벨인코딩을 할 필요가 없으니 그냥 두어도 괜찮을까요?
안녕하세요. 지도 시각화 결과를 Public에 올려봤는데요. 태블로 Default 배경맵은 Public에서 제대로 나오는데, V-World 지도를 배경맵으로 적용한 경우는 배경맵은 나오지 않고 분석한 결과만 나오고 있습니다. 이게 맞는 건가요? 해결방법은 어떻게 되나요?