안녕하세요. 강의 잘듣고 있습니다. Remote Tunnel 방식을 이용한 VSCode 환경 연결 강의를 수강하고 문의 내용이 생겨 질문드립니다. Connect를 누르고 connect to tunnel을 눌렀을때 우리가 작업하고 있는 vm 이름이 바로 뜬것은 ssh로 접속을 했기 때문인가요? 도커에서 환경이(강의에서는 폴더 이름이) 사용자 별로 분리가 된다고 하셨는데 보통 같은 vm안에서 하나의 프로젝트를 함께 완성 시키는 경우라도 이렇게 분리해서 개발하나요? 아니면 보통 이렇게 분리 되어 있는게 리소스는 하나를 공통으로 쓰고 각자 개발하는데에 유리한건가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하세요 김영한님 ! REQUIRES_NEW는 완전히 물리적으로 트랜잭션이 분리되어 REQUIRED(A 메서드)에서 REQUIRES_NEW(B 메서드)를 호출 했을 때 B 메서드에 발생한 예외가 A 메서드에 전파되지 않는다고 이해했습니다. 실제 확인을 위해 아래 코드를 구성해 @Service @RequiredArgsConstructor public class MeetingService { private final MeetingRepository meetingRepository; private final MemberService memberService; @Transactional public void save() { meetingRepository.save(new Meeting("스터디 모임", LocalDate.now(), LocalTime.now(), "AB3AS2EG")); memberService.save(); } @Transactional(readOnly = true) public List<Meeting> findAll() { return meetingRepository.findAll(); } } @Service @RequiredArgsConstructor public class MemberService { private final MemberRepository memberRepository; @Transactional(propagation = Propagation.REQUIRES_NEW) public void save() { memberRepository.save(new Member("김철수")); throw new IllegalArgumentException(); } @Transactional(readOnly = true) public List<Member> findAll() { return memberRepository.findAll(); } } 아래 테스트 코드로 테스트를 진행했습니다. @Test void test() { assertThatThrownBy(() -> meetingService.save()) .isInstanceOf(IllegalArgumentException.class); // 롤백 여부 확인 List<Meeting> meetings = meetingService.findAll(); List<Member> members = memberService2.findAll(); assertThat(meetings).isEmpty(); assertThat(members).isEmpty(); } 결과를 로그로 분석해보니 MemberService의 트랜잭션은 독립적으로 롤백 발생한 예외가 MeetingService로 전파 전파된 예외로 인해 MeetingService의 트랜잭션도 롤백 이런식으로 흐름이 진행됐습니다. 제가 추측하기로는 물리적으로 분리는 되어 있지만 하나의 스레드에서 생긴 커넥션이고 자바의 예외 전파 메커니즘에 따라 A 메서드에서 호출한 B 메서드의 예외가 A 메서드에 전파된 것이 아닌가 생각을 했는데요 REQUIRES_NEW 사용 시 예외가 전파 되지 않는다. 라고 이해를 했어서 제가 실험한 결과가 맞는지 간과한 부분이 있었던 것인지 궁금합니다 !
안녕하세요. 강사님 강의따라 docker-compose.yaml 수정 후 에어플로우 내렸다가 다시 올렸는데 dags_bash_operator가 local hostdp에서 보이지 않습니다. (다시 내렸다가 올려도 그대로네요..) 올리기 위해 어떻게 접근해볼 수 있을까요? 맥환경이고 캡처와 같이 수정까지 완료된 상황입니당.
2유형 shape을 처음만 확인하고 (스케일러&원핫진행) 코드 수정하는 과정에서 shape 을 확인안했네요 (스케일링 진행x 라벨인코딩/겟더미 둘중 하나) x_test로 데이터 넣은건 확실히 기억나는데 결과수에 영향없겠죠ㅠㅠㅠ? 질문 보다보니까 train과 test 합쳐서 겟더미 하는것과 따로하는게 결과가 달라질수있다는 글 보고 급 무서워져서요ㅠㅠ 저는 시험에서 train과 test 따로했고 train중에서도 object형 변슈만 따로뽑아서 인코딩했습니다ㅠ!
아래 질문 올리신 분 보고 저도 혹시나 해서 질문드립니다. 저도 csv 파일 제출 후 확인해보려고 마지막에 아래와 같은 코드를 실행해봤는데요 result = pd.read _csv('result.csv') print(result) 실행 후 다시 제출을 했는지 안했는지는 잘 모르겠습니다 만일 제출을 했다면 저도 점수는 아예 날라갔다고 보면 되는 건가요?
submit.to_csv("result.csv", index=False)를 실행시킨 다음 코드를 지우고 print(submit.to_csv("result.csv", index=False)) 실행시켜 버린 후 제출했는데 이렇게 해도 정상적으로 제출될까요?ㅠㅠㅠ 너무 찜찜합니다
안녕하세요. 양질의 강의로 빠른 기간 내에 시험을 보고 온 것 같습니다. 다름이 아니고, 2유형 결과를 제출하면서 제가 정상적으로 한 게 맞는지 궁금해서요! # 결과 파일 제출 1) submit = pd.DataFrame({ 'pred' : pred }).to_csv("result.csv", index=False) 위의 코드로 제출을 해버렸습니다. 제출 전에 pred 결과 확인을 위해 pd.read_csv("result.csv")로는 데이터가 잘 불러와졌습니다. (submit 변수를 따로 호출하지 않음.) 연습 환경 (코랩)에서는 아래 형식으로 테스트를 했었는데요. 2) submit = pd.DataFrame({ 'pred' : pred }) submit.to_csv("result.csv", index=False) 이번에는 1) 방식으로 파일을 제출해 버려서, 혹시 시험 환경에서 result.csv 파일이 잘 생성되었을지 가 알고 싶습니다. 감사합니다.
안녕하세요. 최근 querydsl 공부를 시작하려고 정보를 찾던 중 querydsl에 대한 SQL Injection 에 관한 내용을 보고 김영한님의 생각이 궁금합니다! 그리고 querydsl 지원중단 얘기를 보기도 해서 이런 취약점이 나올 때마다 빠른 대응이 되는지 역시 궁금합니다!! https://www.csirt.sk/querydsl-java-library-vulnerability-permits-sql-hql-injection.html
데이터 핸들링을 위한 판다스 기초1 강의 중 type(df)를 적으면 pandas.core.frame.DataFrame 말고도 뭔가 가 뜹니다. 그냥 print(type(df))를 적으면 아래와 같은게 안뜨는데, 무슨 에러인가요? pandas.core.frame.DataFrame def __init__(data=None, index: Axes | None=None, columns: Axes | None=None, dtype: Dtype | None=None, copy: bool | None=None) -> None /usr/local/lib/python3.10/dist-packages/pandas/core/frame.pyTwo-dimensional, size-mutable, potentially heterogeneous tabular data. Data structure also contains labeled axes (rows and columns). Arithmetic operations align on both row and column labels. Can be thought of as a dict-like container for Series objects. The primary
ROC AUC로 평가 할때, 예측을 확률로 하는 이유가 있을까요? 그냥 0또는 1로 예측하면 안될까요? 여자 0, 남자 1로 성별이 정해지면 여자일 확률을 예측하는지, 남자일 확률을 예측하는지 문제에서 정의되지 않았는데, 강사님께서 남자일 확률을 예측하는 것으로 정한 이유가 궁금합니다.
질문을 온전히 이해할 수 있도록, 모든 맥락을 전달해주세요. 질문은 질문자가 번거로워야 보다 좋은 답변을 얻으실 수 있습니다. 시행착오를 알려주시면 곧바로 원하는 문제에 집중할 수 있습니다. 오류 메시지는 일부만 알려주시기보다 전체 오류 메시지를 캡처해서 주시면, 오류 파악에 도움이 됩니다. 당신의 파이썬/장고 페이스메이커가 되겠습니다. ;-) 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. postgresql 을 다른 서버에 연결하여 사용중인데요. runserver 시에는 정상 작동하나 강사님이 올려주신 pytest를 똑같이 설정하고 실행하면, schema가 없어서 table을 생성할 수 없다는 오류가 발생합니다. MigrationSchemaMissing("Unable to create the django_migrations table 일단은 settings.py를 sqlite3로 변경하여 정상 작동은 시켰는데요 어떻게 수정할 수 있을까요? 또한 올려주신 소스코드에서 import factory from accounts.models import User class UserFactory(factory.django.DjangoModelFactory): class Meta: model = User django_get_or_create = ("username",) username = factory.Sequence(lambda n: f"user{n}") email = factory.LazyAttribute(lambda user: f"{user.username}@example.com") # UserFactory 인스턴스 생성 시에, 암호 입력을 지원하기 위함 # raw_password 필드가 아니라 password 필드로 지정하면, 암호화없이 입력값 그대로 저장됩니다. raw_password = factory.Faker("password") @classmethod def _create(cls, model_class, *args, **kwargs): # raw_password 필드값을 암호화하여 password 필드에 저장합니다. # User 모델에는 raw_password 이름의 필드가 없으므로 kwargs 사전에서 제거해줘야만 합니다. raw_password = kwargs.pop("raw_password", None) if raw_password: kwargs["password"] = make_password(raw_password) return super()._create(model_class, *args, **kwargs) make_password 부분이 import 되어 있지 않습니다. git에서는 수정되어 있는 모양인데 참고 부탁드립니다.
현재는 train.csv로 출제되기에, 인코딩 전 타겟데이터를 분리해서 target = train.pop('col') 하잖아요? 만약 x_train, y_train 분리 시, 인코딩 전에 (혹은 아무 과정에서나) target = y_train.pop('col') 처럼 분리해도 되죠? 이 과정이 모델링 시, model.fit(x_train, y_train['col']) 과 마찬가지인 것이죠??