Next.js 완벽 마스터 (v15): 노션 기반 개발자 블로그 만들기 (with 커서AI)
안녕하세요! 강의 잘 듣고 있습니다. 제가 혼자 실습하다가 createPostAction 의 반환값에 success 필드를 넣은 후에 useActionState 의 initialState 에도 이 필드를 아래와 같이 추가했었는데요, const [state, formAction, isPending] = useActionState(createPostAction, { message: '', errors: {}, formData: { title: '', tag: '', content: '', }, success: false, }); useActionState 훅을 사용할 때 initialState 에 포함된 필드 중 일부를 이후 action 함수의 반환값에서 생략하면 어떤 경우에는 에러가 발생하고, 어떤 경우에는 아무 문제 없이 동작하는 게 잘 이해가 되지 않아서요. 예를 들어 initialState 에는 success 필드가 있지만, 유효성 검사 실패 시 반환 객체에서 success 를 생략하면 에러가 발생합니다. if (!validatedFields.success) { return { errors: validatedFields.error.flatten().fieldErrors, message: 'Validation failed', formData: rawFormData, success: false, // 없으면 useActionState 에서 에러 발생 }; } 그런데 try...catch 문에서는 success 없이 반환하면 에러가 발생하지 않는 걸 확인할 수 있었습니다. try { const { title, tag, content } = validatedFields.data; await createPost({ title, tag, content }); revalidateTag('posts'); return { success: true, // 없어도 에러 안남 message: 'Post created successfully', }; } catch (e) { return { message: 'Failed to create post : ' + e, formData: rawFormData, }; } formData 필드도 비슷하게 행동하는데 이 차이가 왜 발생하는지, 어떤 기준으로 반환 객체의 필드 구조를 검사하고 에러를 발생시키는지 궁금합니다. useActionState 에서 반환 객체의 필드가 initialState 와 구조적으로 정확히 일치해야 하는 조건이 언제 적용되는 건가요?
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 안녕하세요 강사님 오늘 방금 시간으로 RMSE 내용이랑 test.csv 예측칼럼 삭제 확인했는데 혹시 강의 업로드 가능하신지 문의드립니다~
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 안녕하세요. 2유형 문제에서 원-핫 인코딩을 진행할 때, 기존에는 train과 test 데이터를 먼저 합친 뒤 pd.get_dummies()를 적용하고, 이후 다시 분리하는 방식으로 학습했었습니다. 그런데 최근 기출문제 풀이를 보면, train과 test를 따로 인코딩하는 경우도 종종 보이더라고요. 혹시 범주의 유니크 값 개수가 동일하다면, 굳이 합치지 않아도 인코딩을 개별적으로 진행해도 무방한 건지 궁금합니다. 인코딩 처리 방식에 대해 혼동이 있어 문의드립니다. 감사합니다.
# 모듈 임포트 import win32com.client as win32 # 한/글 열기 hwp = win32.gencache.EnsureDispatch("hwpframe.hwpobject") hwp.XHwpWindows.Item(0).Visible = True hwp.RegisterModule("FilePathCheckDLL", "FilePathCheckerModule") hwp.Open(r"C:\Users\smj02\Desktop\누름틀필드.hwp") # 엑셀 열기 excel = win32.gencache.EnsureDispatch("Excel.Application") excel.Visible = True wb = excel.Workbooks.Open(r"C:\Users\smj02\Desktop\취미.xlsx") ws = wb.Worksheets(1) # 필드삽입 함수 정의 def 필드삽입(index, value): field_list = ["이름", "성별", "생일", "취미"] for idx, field in enumerate(field_list): hwp.PutFieldText(f"{field}{{{{{index}}}}}", value[idx]) # 첫 쪽 복사 hwp.Run("CopyPage") # while문 실행 row = 2 while True: if not ws.Cells(row, 1).Value: hwp.Run("DeletePage") break else: data = list( ws.Range(ws.Cells(row,1), ws.Cells(row, 4)).Value[0] ) data[2] = data[2].strftime("%Y년 %#m월 %#d일") 필드삽입(row-2, data) hwp.Run("PastePage") row += 1 위 코드를 실행 시켰을때 한글 첫페이지만 아래처럼 생성되고 다음 페이지(빌, 일론 등)가 생성이 안됩니다. 이름 : 마크 성별 : 남 생일 : 1984년 5월 14일 취미 : VR 그대로 복붙해서 했는데 안되서 질문 남깁니다ㅠ 첫 쪽 복사와 붙여넣기가 안먹는거 같은데 이상하네요
12:58 2번 문제에서 앞의 부분, 데이터에서 'solar'와 'o3'를 고정한 상태에서 'wind'의 세기가 증가함에 따라~~ 이 부분은 무시해도 되는건가요?? wind의 p-val 값은 구할 수 있는데 풀이 당시 앞부분의 의미를 몰라서 무엇을 구해야 할지 몰랐었습니다..
from sklearn.ensemble import RandomForestClassifier model = RandomForestClassifier(random_state= 0 ) model.fit (X_tr,y_tr) pred = model.predict(X_val) f1_socre = f1_score(y_val,pred,average= 'macro' ) print (f1_score) 로 작성했더니 <function f1_score at 0x7cb537c5f6a0>로 출력이 되는데 이건 무슨 값일까요? 어떻게 해야 선생님처럼 값이 나올까요>
opt+enter를 수행하여 io import 까지는 똑같이 진행 되었는데요, 두번째 opt+enter를 진행할때는 강사님과 똑같이 메뉴가 뜨지 않네요 ㅠㅠ platform밑에 빨간밑줄이 생겨서 지금 수업을 따라서 진행하기가 어려운 상황입니다. 수동을 import도 넣어보고, flutter clean, flutter pub get, Invalidate Cache & Restart도 여러차례 진행했구요. 그래도 안되서 pubspec.yaml 파일 내에 webview_flutter: ^4.13.0 밑에다가 webview_flutter_android: ^4.7.0 도 추가해보았습니다... 이상한 부분이 있다면 계속 초록색 밑줄이 생기네요 왜 그럴까요..
안녕하세요 3유형에서 rmse로 성능측정시 원래는 mse**0.5해서 계산하고 있었는데 퇴근후딴짓님 어떤 영상에서는 새로 패키지가 추가됬다며 from sklearn.metrics import root_mean_squared_error 해서 root_mean_squared_error(y_val, pred) 이렇게 사용하더라구요 실제 시험환경에서 위와같이 사용해도 되나요?
[auth][error] JWTSessionError: Read more at https://errors.authjs.dev#jwtsessionerror [auth][cause]: Error: The edge runtime does not support Node.js 'crypto' module. Learn More: https://nextjs.org/docs/messages/node-module-in-edge-runtime at Object.get (C:\project\whatsForLunch\basic-app\frontend\.next\server\edge\chunks\_b7b28d92._.js:62:41) at C:\project\whatsForLunch\basic-app\frontend\.next\server\edge\chunks\node_modules__pnpm_e56295b8._.js:8637:62 at getSecret (C:\project\whatsForLunch\basic-app\frontend\.next\server\edge\chunks\node_modules__pnpm_e56295b8._.js:8620:20) at push.[project]/node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/verify.js [middleware-edge] (ecmascript).module.exports (C:\project\whatsForLunch\basic-app\frontend\.next\server\edge\chunks\node_modules__pnpm_e56295b8._.js:8623:12) at Object.decode (C:\project\whatsForLunch\basic-app\frontend\.next\server\edge\chunks\[root-of-the-server]__273b5c62._.js:135:233) at session (C:\project\whatsForLunch\basic-app\frontend\.next\server\edge\chunks\0253f_@auth_core_77718842._.js:4516:39) at AuthInternal (C:\project\whatsForLunch\basic-app\frontend\.next\server\edge\chunks\0253f_@auth_core_77718842._.js:5123:269) at async Auth (C:\project\whatsForLunch\basic-app\frontend\.next\server\edge\chunks\0253f_@auth_core_77718842._.js:5379:34) at async handleAuth (C:\project\whatsForLunch\basic-app\frontend\.next\server\edge\chunks\node_modules__pnpm_e56295b8._.js:3885:29) at async C:\project\whatsForLunch\basic-app\frontend\.next\server\edge\chunks\_b7b28d92._.js:12505:20 [auth][details]: {} GET / 200 in 137ms auth.ts에 jwt: { encode: async ({ token, secret }) => { return jwt.sign(token as jwt.JwtPayload, secret as string); }, decode: async ({ token, secret }) => { return jwt.verify(token as string, secret as string) as JWT; }, }, 이 부분을 추가한 이후부터 The edge runtime does not support Node.js 'crypto' module. 이 에러가 발생하는데 해결이 어렵네요.. 코드는 노션이랑 강의 보고 다 비교해 봤는데 드른 부분은 없었스빈다..
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 7. 머신러닝 학습 및 평가(분류) 11분19초 부분입니다. 안녕하세요. roc_auc_score로 pred와 y_val간 비교를 통해 roc-auc 스코어를 내는 부분에 질문이 있습니다. roc_auc = roc_auc_score(y_val, pred[:,1]) 여기서 y_val의 경우에 프린트해보면 각 항에 <=50K 혹은 >50K 라는 값으로 이루어져 있습니다. pred는 array의 집합 [0.1 , 0.9] 등으로 이루어져 있는데 pred[:, 1]을 통해서 '>50K' 부분만 따로 추출해내는 점은 이해가 됩니다. 제가 궁금한것 여기서 y_val의 값, 즉 <=50K 혹은 >50K이 '<=50K'는 0 '>50K'는 1으로 정의가 되어있는 건지요? 특별히 정의를 한것 같지는 않습니다. (물론 문제에서는 50만불 이상이 양성이라고 언급은되어있습니다만..) 혹시 rf.classes_ 에서 출력되는 ['<=50K' '>50K'] 값의 의미가 dataset의 y값 전체가 '<=50K'= 0, '>50K'= 1 라는 의미로 이해를 하면되는 것일까요? (전체y(타겟)의 넘버가 rf클래스의 인덱스 값에 따르는 것인지?)
안녕하세요 실습 체험 환경에서 작업 중인데 from sklearn.metrics import root_mean_squared_error 해당 문구를 사용하면 아래와 같이 뜹니다 .. 버전이 달라 더이상 사용을 못하는 걸까요 ? dir(sklearn.metrics) 해서 목록을 살펴보면 mean_squared_error 는 다 있는데 , root_mean_squared_error 이 함수만 없습니다 ... 왜 그런걸까요 ㅠㅠ make: *** [py3_run] Error 1 Traceback (most recent call last): File "/goorm/Main.out", line 98, in <module> from sklearn.metrics import root_mean_squared_error ImportError: cannot import name 'root_mean_squared_error' from 'sklearn.metrics' (/usr/local/lib/python3.9/dist-packages/sklearn/metrics/__init__.py)
안녕하세요! 빠른 반영 감사합니다 ㅠㅠ! 대체로 질문해석이 좀 어려운데요..이번꺼 보면서 궁금한게 들어서 질문 드립니다! *시험용 공부만 해서, 이론개념이 거의없는 점 참고바랍니다..! 1) ① - 분산을 구해서 조건에 맞는(단, ~) 계산을 한게 검정통계량인걸까요..? 아니면 결국 핵심이 '분산에 차이가 있는지를 알아보기 위해' 이기 때문에 분산을 통해 계산을 하면 되는것인지 궁금합니다. 2)③ - '정규성,등분산 검정 후' 라는 언급이 없으면 무조건 등분산 true로 두고 진행하면 될까요? *cond1 샤피로검정해보니 0.03으로 귀무가설 기각이여서 문의드립니다..!
안녕하세요 강사님. 머신러닝 학습 및 평가(회귀) 강의 관련 질문 드립니다. 인코딩을 위해 train + test 데이터를 합친 후, 다시 분리시키는 방법을 알려주셨는데요, train / test 데이터 개수가 불균형일 때만 이렇게 진행하면 될까요? 합치고 분리하지 않고, 그냥 바로 인코딩 진행해도 문제가 없을지 궁금합니다.
안녕하세요 강사님 :) 스케일링 방법 강의에서 아래 코드는 외울 필요가 없다고 말씀 주셨는데요, # 데이터를 매번 새롭게 불러오기 위해 함수로 제작 함 def get_data(): train_copy = train.copy() test_copy = test.copy() return train_copy, test_copy 시험 볼 때 스케일링을 한 가지 하는 게 아니라 세 개 다 한다고 가정했을 때, copy 하지 않으면 처리 결과에 영향을 미치지 않나요? 어떻게 하면 될지 문의드립니다.