6회 기출유형 6-2 작업형 질문
미해결
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
전체 학생수의 계산 값이 너무 크게 나옵니다..
- python
- 머신러닝
- 빅데이터
- pandas
- 빅데이터분석기사
172만명의 커뮤니티!! 함께 토론해봐요.
미해결
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
전체 학생수의 계산 값이 너무 크게 나옵니다..
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세 여기서 계속 오류가 납니다 그리고 궁금한게 있는데요 데이터가 세개일때는 train으로 합쳐줘야해서 concat해서 df를 만든것이 train 데이터가 되는거 아닌가요? df=pd.concat([X_train,y_train['Reached.on.Time_Y.N']],axis=1) df 위에 코드처럼 df를 만들면 저게 train으로 해서 뒤에 쓰여야 할것 같은데 뒤에라벨인코딩 할 때 왜 df[col]=le.fit_transform(X_train[col])가 아니고 X_train[col]=le.fit_transform(X_train[col])l]) 이렇게 되는지 잘 모르겠어요... df는 그럼 concat으로 생성하고 뒤에 안쓰이는거 아닌가요?
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
시험 환경에 csv파일 생성 예시 코드가 주어지나요? 케글 모의고사 보니까 주어져 있어서요!
미해결
자바 ORM 표준 JPA 프로그래밍 - 기본편
package hellojpa; import jakarta.persistence.*; public class JpaMain { public static void main(String[] args) { EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello"); EntityManager em = emf.createEntityManager(); //code EntityTransaction tx = em.getTransaction();//트랜잭션 생성 tx.begin(); try { Member member = new Member(); member.setId(4L); member.setName("유동곤7"); em.persist(member); tx.commit(); }catch (Exception e){ tx.rollback(); } finally { em.close(); } emf.close(); } } 위코드에서 member의 setId와 setName을 바꾸면 강의를 보면 DB에 데이터가 쌓이는것같은데 저는 아이디를 바꾸고 이름을바꿔도 기존 데이터가사라지고 새로운데이터로 바뀌게됩니다 . 뭐가문제일까요
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
import pandas as pd import numpy as np df = pd.read_csv('data6-1-3.csv') print(df.shape) # print(df) df['sum'] = df.iloc[:,1:7].sum(axis=1) # print(df.head()) df['year'] = df['날짜'].str[:4] # 2022 12 # 2020 11 # 2021 9 # 2024 9 # 2023 9 df1 = df.groupby('year')['sum'].mean() # print(df1) df1 문제풀이를 보니까 groupby이후에 그냥 12로 나누셨던데 년도자료마다 갯수가 달라서 12로 나누면 안되는건아닌지 궁금합니다 아래는 선생님 풀이입니다. # 3. 연도별 그룹핑(총범죄).sum() result = df.groupby("연도")['총범죄'].sum()/12
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 시간이 너무 없어서, 3유형은 선택과 집중해서 보고 가려고 합니다. from statsmodel.formula.api import ols model = ols('키 ~ 몸무게' , data=df).fit() print(model.summary()) newdata = pd.DataFrame({'몸무게':[50]}) pred = model.get_prediction(newdata) pred.summary_frame(alpha=0.05) 이 부분 말고도 볼만한 부분이 따로 볼만한 부분이 있을까요..
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
print(train.shape, test.shape) train.head(1) test.head(1) train.info() test.info() train.isnull().sum() test.isnull().sum() train.describe() test.describe() target = train.pop('Segmentation') print(train.shape, test.shape) train = pd.get_dummies(train) test = pd.get_dummies(test) print(train.shape, test.shape) 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) 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(X_val) 다음과 같이 작업형 2 기출 4회를 한 셀에 풀고 있는데 target 구문을 겟더미 실행하기 전에 타이핑했습니다. 이후 모델 학습 및 평가를 실행하려고 하니 다음과 같은 에러가 뜹니다. 에러 코드가 복사가 안됩니다. 이 점 양해바랍니다. ㅜㅜ
미해결
자바 ORM 표준 JPA 프로그래밍 - 기본편
em.getReference()로 프록시 객체를 조회하면 영속성 컨텍스트에는 프록시 객체가 저장되는건가요?? 아니면 엔티티를 실제 사용하는 시점에 영속성 컨텍스트가 DB를 조회해서 실제 엔티티를 만드는데 이 엔티티가 영속성 컨텍스트에 저장되는건가요??
미해결
@Getter @Setter @Entity @SuperBuilder @AllArgsConstructor @Table(name = "member") @NoArgsConstructor(access = AccessLevel.PROTECTED) public class Member extends BaseUpdateEntity { @Id @GeneratedValue(generator = "uuid2") private UUID id; private String email; private String password; @Column(columnDefinition = "INT") @Enumerated(value = EnumType.ORDINAL) private MemberStatus memberStatus; } @Getter @Setter @SuperBuilder @MappedSuperclass @NoArgsConstructor @EntityListeners(AuditingEntityListener.class) public abstract class BaseUpdateEntity extends BaseEntity { @LastModifiedDate private LocalDateTime updatedAt; @LastModifiedBy private String updatedBy; } @Getter @Setter @SuperBuilder @MappedSuperclass @NoArgsConstructor @EntityListeners(AuditingEntityListener.class) public abstract class BaseEntity { @CreatedDate @Column(updatable = false) private LocalDateTime createdAt; @CreatedBy @Column(updatable = false) private String createdBy; } public Page<AuthInfoDto> searchList(AuthSearchRequestDto requestDto) { JPAQuery<AuthInfoDto> query = queryFactory.select(Projections.fields( AuthInfoDto.class, member.email, member.memberStatus.as("status"), member.createdAt )).from(member) .where(searchCondition(requestDto)); // 검색 조건 설정 long totalCount = query.fetchCount(); List<AuthInfoDto> authInfoList = this.getQuerydsl().applyPagination(requestDto.getPageable(), query).fetch(); return new PageImpl<>(authInfoList, requestDto.getPageable(), totalCount); } 사용자 정보를 Pagination해서 출력하게끔 하려고 합니다. 문제가 되는 부분은 List<AuthInfoDto> authInfoList = this.getQuerydsl().applyPagination(requestDto.getPageable(), query).fetch(); 해당 코드 부분인데 단순히 query.fetch()를 해서 List를 추출하는 것은 되지만 Pagination을 적용하고자 하면 에러가 납니다. org.hibernate.query.SemanticException: Could not interpret path expression 'member.createdAt' 에러 내용은 위와 같습니다. QueryDSL 관련 gradle 정보도 같이 첨부합니다. // QueryDSL implementation 'com.querydsl:querydsl-core:5.0.0' implementation 'com.querydsl:querydsl-jpa:5.0.0:jakarta' implementation 'com.querydsl:querydsl-apt:5.0.0:jakarta' implementation 'jakarta.annotation:jakarta.annotation-api' implementation 'jakarta.persistence:jakarta.persistence-api' annotationProcessor "com.querydsl:querydsl-apt:5.0.0:jakarta" annotationProcessor "jakarta.persistence:jakarta.persistence-api" annotationProcessor "jakarta.annotation:jakarta.annotation-api" 혹시 뭐가 문제일까요?? 도와주세요.
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
인코딩 한 다음 train과 test 컬럼수가 안맞을때 test컬럼이 많을경우 train = train.reindex(coulumns = test.columns, fill_values =) 이렇게 해도 되나요?
미해결
자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
저번에 실행했을 땐 잘 연결됐는데 지금은 이렇게 사진처럼 연결되지가 않네요.... 왜 이런건가요..? 서버도 실행한 상태에서 local 주소를 입력했는데 이렇게 된 상태입니다. 혹시 몰라 서버를 실행했을 때 에러가 뜨는 부분들을 다 캡쳐했습니다.
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
안녕하세요 3-6 회귀- 검정데이터 분리에 from sklearn.model_selection import train_test_split X_tr, X_val, y_tr, y_val = train_test_split(train.drop('charges'), axis=1),하고 y값으로 chages를 넣어주면 된다고 하셨는데 이 부분이 이해가 안가요. train, test하다가 갑자기 y값이 나온 것과 train.drop('charges')에서 charges를 제외하는데 y값에 charges를 넣는게 이해안됩니다...
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
cols = train.select_dtypes(include = 'object').columns ncols = train.select_dtypes(exclude = 'object').columns all_df = pd.concat([train,test]) c_all_df = pd.get_dummies(all_df[cols], drop_first = True) n_all_df = all_df[ncols] line = int(train.shape[0]) c_train = c_all_df.iloc[:line] c_test = c_all_df.iloc[line:] n_train = n_all_df.iloc[:line] n_test = n_all_df.iloc[line :] train = pd.concat([c_train,n_train], axis = 1) test = pd.concat([c_test, n_test], axis = 1) train.shape test.shape 강의 19분 49초 쯤 보면, object type만 concat을 시켰더라구요, 근데 실제로 수치형 데이터도 있을 수 있으니깐 위의 코드처럼 수치형도 별도로 불러와서 최종 train과 test / concat을 해줘야 하는거 아닐까해서요. 제가 저렇게 object type만 불러오는지 모르고 accruacy score 점수 매겨봤는데 0.49가 나오더라구요.. 저 방법이 맞는지 문의드리며, 좀더 간단한 코드가 있을까요? 저게 제일 직관적이긴 할것 같은데,,,,
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
https://www.kaggle.com/code/agileteam/t3-ttest-1samp 캐글에 있는 학생들의 평균이 75을 넘는 것을 물어보는 문제에서 학생들의 평균과 75를 비교해야하는 것 아닌가요? 그런데 단순히 학생들의 점수와 75를 비교하고 있어서 이해하기 어렵습니다. 코드는 ttest_1samp(scores, mu, alternative='greater') 이렇게 되어있고 scores는 점수리스트입니다.
미해결
RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
안녕하세요. 임베딩 모델 실행 하는데 아래의 에러가 발생합니다. 혹시 오픈ai 유료로 사용해야 api키 사용 가능한건가요 ? 에러메시지는 할당 쿼터를 초과 했다는데, 임베딩 모델 실행 전 gpt에 질문한건 없었습니다. .env 로딩 실행도 해놨습니다.
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
cols = train.select_dtypes(include = 'object').columns # print(train.nunique()) # train.info() all_df = pd.concat([train,test]) all_df = pd.get_dummies(all_df[cols], drop_first = True) line = int(train.shape[0]) train = all_df.iloc[:line] test = all_df.iloc[line:] 원핫 인코딩 시 cols로 object 항목들 불러올때 train.select_dtypes(include = 'object').columns 로 써도 되나요? 강의에서는 list(train.columns[train.dtypes == object])로 불러왔는데, 두개 다 외우기는 힘들어서 하나만 가지고 가려고 하거든요.
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
교재 작업3 회귀 중고차예측문제를 푸는데(평가지표 RMSLE) 마지막에 rmsle 계산할 때 Root Mean Squared Logarithmic Error cannot be used when targets contain negative values. 이런 에러가 계속 나오더라고요 타겟 데이터가 price라서 음수는 없는데 무슨 문제일까 싶어서 train_test_split후 from sklearn.metrics import root_mean_squared_log_error 사이킷런에서 불러와서도 해보고 from sklearn.model_selection import cross_val_score rmsle = -1 * cross_val_score(model , train , target , cv = 5 , scoring = "neg_root_mean_squared_log_error") cross_val_score 사용해서도 해봤는데도 계속 같은 에러가 나왔습니다.. 아무리 해도 안고쳐 지길래 저는 모델이 lgbm이었는데 혹시나 해서 랜덤포레스트로 바꾸니까 정상적으로 돌아가더라고요.. 혹시 lgbm을 사용하면 안되는 문제점이 있을까요?
미해결
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
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 이것도 넣어줬는데 안됩니다
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형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)
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 아직 강의 보기전 혼자 풀어보았을때 결과가 이런식으로 다르게 나온다면 코드에서 잘못된 부분이 있는거겠죠ㅠㅠ? 검증데이터로는 roc_auc_score 0.75 나옵니다 (오류없이 실행은 되는데 결과 확률이 다르게 나옵니다ㅠ)