강사님 안녕하세요. 코틀린을 자바처럼 쓴 제 자신을 혼내면서(?) 열심히 청강 중입니다. 강의에서 작성하신 Transactional.kt 코드를 보면 스프링의 TransactionTemplate을 활용한 명시적 트랜잭션 제어 방식과 큰 차이점이 없어 보입니다. 코틀린 래핑방식으로 사용했을때 어떤 장점이 있는걸까요? 제가 생각한 래핑 방식의 장점은 다음과 같습니다. 코드 스타일, 네이밍, optional 옵션 추가 등에서 약간 더 자유로움 예를 들어 여러 종류의 트랜잭션 처리 규칙(특정 로그, 메트릭, 롤백 조건 등)을 한곳 에 구현해서 공용유틸로 쓰기 좋고, 내부 구현을 추후 TransactionTemplate, PlatformTransactionManager 등 다양한 방식으로 손쉽게 변경 가능 트랜잭션 코드에 특별히 넣어야 할 커스텀 공통로직"이 없다면, 웬만하면 @Transactional / TransactionTemplate만으로 충분하다는 생각입니다. 정답은 없고 팀의 규칙마다 다를것 같아요. 강사님 팀에서는 어떤 방식으로 사용중이신가요? 강의 찍어주셔서 감사합니다앗~! (개인적인 사견인데 말씀하시는 중에 '죄송합니다'는 안하셔도 될것 같아요~!)
n = int(input()) c = [] for _ in range(n): b = int(input()) c.append(b) def DFS(L,first,second,third): global best a = max(first,second,third) - min(first,second,third) if a >= best: return if L == n: if a < best: best = a else: for i in range(n): if ch[i] == 0: ch[i] = 1 DFS(L+1,first+c[i],second,third) DFS(L+1,first,second+c[i],third) DFS(L+1,first,second,third+c[i]) ch[i] = 0 ch = [0] * n best = 10000000000000 DFS(0,0,0,0) print(best)
문제에 대한 정리가 필요해 질문 남깁니다. 결국 문제는 1명, 2명, 3명 이렇게 차례대로 모였을 때 1명 모이면 이동거리 최소 이동 거리 합 : n1 2명 모이면 이동거리 최소 이동 거리 합 : n2 n명 모이면 이동거리 최소 이동 거리 합 : nn 이런 최소값을 원하는 문제인거죠? 그래서 1번 아이디어로 구현 했을 경우에는 모든 좌표에 대해서 1명 모일 때 , 2명 모일 때 반복하면서 모든 경우의 수를 찾아가는 가는 방법이고 2번 아이디어의 경우는 모든 좌표를 볼 필요 없이 각각의 집 좌표만 보면 된다라는 생각을 해서 각각의 집 좌표로 비교해서 경우의 수를 찾는 방법이고 3번 아이디어는 각각의 집 좌표들을 모두 비교할 필요 없이 정렬 후 인원의 수 만큼 돌면서 작은 값이면 바꿔준다 방법이고 이런 느낌으로 접근을 한게 맞는 걸까요?
작업형1 모의문제3 문제9관련 질문입니다. 해설을 보고 코드를 작성했는데, 결과값이 11이 아니라 np.int32(11)로 나옵니다. 무엇이 잘못되었을까요? 문제9 구독(subscribed) 월별로 데이터 개수를 구한 뒤 가장 작은 구독 수가 있는 월을 구하시오 # your code import pandas as pd df = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/main/p1/members.csv") df['subscribed']=pd.to_datetime(df['subscribed']) df['year']= df['subscribed'].dt.year df['month']= df['subscribed'].dt.month df['day'] =df['subscribed'].dt.day df= df.groupby('month').count() df.sort_values('subscribed').index[0] =>np.int32(11)
✅ 모든 질문들은 슬랙 채널에서 답변드리고 있습니다. 💡 ”로펀의 인프런 상담소” 슬랙 채널 가입하기 💡 평일중에는 퇴근 이후(저녁 7시)에 답변을 받아보실 수 있고, 주말중에는 상시 답변드리고 있습니다. 모듈 에러가 뜨는데 수파베이스 설치를 잘못 한 것일까요? 검색해서 이리 저리 해보아도 잘 해결이 되지 않네요. 도와주세요~
문제3을 풀다가 궁금한 부분이 생겨서 질문합니다. f3 컬럼의 결측치는 0, silver는 1, gold는 2, vip는 3 으로 변환하는 과정에서 1,2,3을 문자형으로 했을 때는 제대로 나오는데, 숫자형으로 진행하면 오류가 납니다. 아래 제 제가 작성한 코드와 오류 내용입니다. # your code import pandas as pd df = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/main/p1/members.csv") #views 컬럼에 결측치가 있는 데이터(행)을 삭제하고, # print(df.isnull().sum()) # print(df.shape) df=df.dropna(subset=['views']) # print(df.shape) # f3 컬럼의 결측치는 0, silver는 1, gold는 2, vip는 3 으로 변환한 후 # print(df.head(10)) df['f3']=df['f3'].fillna(0) df['f3']=df['f3'].replace('silver',1) df['f3']=df['f3'].replace('gold',2) df['f3']=df['f3'].replace('vip',3) # print(df.head(10)) #총 합을 정수형으로 출력하시오 # print(df.info()) df['f3']=df['f3'].astype('int') # print(df.info()) print(sum(df['f3'])) 출력값 =>133 <ipython-input-136-3e83f178c7e6>:20: FutureWarning: Downcasting behavior in `replace` is deprecated and will be removed in a future version. To retain the old behavior, explicitly call `result.infer_objects(copy=False)`. To opt-in to the future behavior, set `pd.set_option('future.no_silent_downcasting', True)` df['f3']=df['f3'].replace('vip',3) 마지막 방법으로 알려주신 sum의 방법의 경우 문제에서 제시하는 값을 변환하고 총 합을 출력하라는 지시에서 값을 실제로 변환하지는 않은 것 같은데.. 답만 맞으면 괜찮은 걸까요? # your code import pandas as pd df = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/main/p1/members.csv") #views 컬럼에 결측치가 있는 데이터(행)을 삭제하고, # print(df.isnull().sum()) # print(df.shape) df=df.dropna(subset=['views']) # print(df.shape) # f3 컬럼의 결측치는 0, silver는 1, gold는 2, vip는 3 으로 변환한 후 r1=sum(df['f3']=='silver')*1 r2=sum(df['f3']=='gold')*2 r3=sum(df['f3']=='vip')*3 print(r1+r2+r3) => 133
안녕하세요, 쿠케님 강의 만족스럽게 수강하고 있는 수강생입니다. 아래 2개의 쿼리문에 대해 첫번째 쿼리문에 where article_id = 1 이라는 조건문이 있고(비록 index를 생성한 컬럼이지만), 두번째 쿼리문에서는 where article_id가 빠진 상태인데도 첫번째 쿼리문의 속도가 더 빨랐습니다. explain 해보니, 두번째 쿼리문에 Using filesort가 존재하는데, order by path로 인해 저희가 지정한 index의 컬럼인데도 불구하고 왜 Using filesort가 되고, 속도가 첫번째 쿼리문에 비해 조건이 없는데도 더 느린지 잘 이해가 안됩니다. mysql> explain select path from comment_v2 where article_id = 1 order by path desc limit 10; +----+-------------+------------+------------+------+---------------------+---------------------+---------+-------+---------+----------+----------------------------------+ | id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | filtered | Extra | +----+-------------+------------+------------+------+---------------------+---------------------+---------+-------+---------+----------+----------------------------------+ | 1 | SIMPLE | comment_v2 | NULL | ref | idx_article_id_path | idx_article_id_path | 8 | const | 4990965 | 100.00 | Backward index scan; Using index | +----+-------------+------------+------------+------+---------------------+---------------------+---------+-------+---------+----------+----------------------------------+ 1 row in set, 1 warning (0.00 sec) mysql> explain select path from comment_v2 order by path desc limit 10; +----+-------------+------------+------------+-------+---------------+---------------------+---------+------+---------+----------+-----------------------------+ | id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | filtered | Extra | +----+-------------+------------+------------+-------+---------------+---------------------+---------+------+---------+----------+-----------------------------+ | 1 | SIMPLE | comment_v2 | NULL | index | NULL | idx_article_id_path | 110 | NULL | 9981930 | 100.00 | Using index; Using filesort | +----+-------------+------------+------------+-------+---------------+---------------------+---------+------+---------+----------+-----------------------------+ 1 row in set, 1 warning (0.00 sec)
안녕하세요. 현재 섹션 3 [작업형1] 판다스 updated 2025.4를 학습중입니다. 판다스 6,7은 시계열 데이터 인데.. 자료에는 ["시계열 데이터" 부분은 마지막으로 옮겼습니다.]고 되어있고 Section19~21 내용은 어떤 강의를 보아야 하는지 모르겠습니다.