select a.student_id, a.student_name, a.subject_name, count(e.subject_name) attended_exams from ( select student_id, student_name, subject_name from Students, Subjects # cross join ) a left outer join ( select student_id, subject_name from Examinations ) e on a.student_id=e.student_id and a.subject_name=e.subject_name group by a.student_id, a.student_name, a.subject_name order by a.student_id, a.subject_name; 해당 코드에 select 문에 있는 count(e.subject_name) attended_exams 를 실행할 때, count(a.subject_name) attended_exams 와 같이 cross join을 실행한 subject_name을 기준으로 실행하는 경우에는 0값이 안나오는 결과를 확인했는데 둘의 차이가 궁금합니다.
선생님! iloc같은경우 인덱스값은 그 앞에 까지 뽑기때문에 +1 해주는 범위까지 설정 해 주는것인데, 컬럼 번호 쓸때는 해당 없는거 같네요?! quiz 2번 푸는데 iloc로 메뉴~할인율 까지 할때 범위를 :3으로 하시길래요! 위에 설명할때는 iloc때 범위를 :로 나타낼 때 마지막을 포함하지 않는다고 하셨는데, 인덱스만 포함하지 않는게 맞는거죠?
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
안녕하세요 수업 듣는중 문제 푸는 21번 강의에서 'str' object is not callable 나와서 알려주신대로 코드를 작성했다가, 안되서 강의자료 복사에서 실행해도 error 납니다. 이런 경우에는 왜 이런 버그가 나오나요? 문제를 풀다가 1번도 아니고 여러 문제들이 계속 같은 문구가 나와서 이렇게 문의드립니다. 답변 주시면 감사하겠습니다 수업 21번 - 본 강의 영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇분 몇초를 꼭 기재부탁드립니다) - 이외의 문의등은 평생강의이므로 양해를 부탁드립니다 - 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다 - 잠깐! 인프런 서비스 운영(다운로드 방법포함) 관련 문의는 1:1 문의하기를 이용해주세요.
leetcode 1978번 문제에서 왜 서브 쿼리를 지정해야만 정답이 나올 수 있는지 궁금합니다. 예를 들어, select employee_id from employees where salary < 30000 and manager_id not in(employee_id); 서브쿼리를 지정하지 않고 위와 같이 작성한 경우에는 | employee_id | | ----------- | | 1 | | 11 | 위와 같이 출력 되는데 왜 서브 쿼리를 지정 안 할 경우에는 해당 출력이 나오는지 궁금합니다
안녕하세요, 좋은 강의 잘 듣고 있습니다. 섹션 4 피봇팅 실습 강의 중 정렬 관련해 문의드립니다. 실습예제 : deptno로 group by하고 job으로 pivoting 쿼리 결과 위 부분에 대해서는 이해했습니다. 그런데, 위 쿼리문 하단에 아래와 같이 order by job;을 추가하면 쿼리 결과 처음에는 컬럼 순서에 따라 열 순서가 정해지는 것이라 생각했는데, 쿼리에서 컬럼의 순서를 바꿔도 각 컬럼에 자료가 표시되는 열 번호가 같습니다. 예시) 쿼리 결과 일단 직급의 우열에 따라(salesman - manager - analyst - clerk - president) 정렬한 것으로 파악했습니다. 하지만 테이블 관계도를 살펴봐도 직급에 대해 정렬 기준을 정의한 부분이 없어보여 문의드립니다. job 컬럼을 기준으로 묶었을 때, 직급의 우열을 정의한 바가 없다면 해당 컬럼의 데이터타입에 따라 알파벳 순으로 나와야 하는 게 아닌지 해서 이유가 궁금합니다. 이상입니다.
import openai api_key = " " openai.api_key = api_key def ask_gpt(system, prompt, model="gpt-3.5-turbo"): completion = openai.ChatCompletion.create( model=model, messages=[ {"role": "system", "content": system}, {"role": "user", "content": prompt} ], stream=True ) result = "" for chunk in completion: delta_data = chunk.choices[0].delta if 'role' in delta_data: continue elif 'content' in delta_data: r_text = delta_data['content'] result += r_text print(r_text, end="",flust=True) ask_gpt(system="you are a helpful assistant." , prompt="사과에 관한 글을 써줘") 해당 부분이 작동이 되지 않아서 확인 요청드립니다. api_key 값은 일단 빼두었습니다.
안녕하세요. 4-5 연습문제 4번 서브쿼리 부분에서 질문이 있습니다. 서브쿼리에 꼭 * 이나 id를 써줘야 실행이 되는 이유는 무엇인가요?? 처음에는 서브쿼리>select에서 카일님 풀이처럼 *를 안 해주고 실행했더니 Unrecognized name: id 라는 오류가 떴습니다. 구글링을 통해 알아보니, 서브쿼리에 id를 안 썼는데 바깥에 COUNT(DISTINCT id) as battle_cnt 를 써줘서 오류가 떴다고 했습니다. 왜 써줘야 하는지 알 수 있을까요??
1.5 groupby 까지 안막히고 잘 오다가 여기서 막힙니다. df_last.groupby(["지역명"]).mean() 작성했을때 TypeError: agg function failed [how->mean,dtype->object] 에러가 뜹니다. 그런데 이어서 ["평당분양가격"]을 타이핑 하면 정상 결과가 나옵니다. 무슨 문제일까요.,?
안녕하세요 좋은 강의 잘 듣고 있습니다. battle 파일 실행 중 문제가 있어 질문 드립니다. google cloud에서 battle파일을 열면 스키마는 나오는데 미리보기가 안됩니다. '표시할 데ㅌ이터가 없습니다'라고 메시지가 뜹니다. 쿼리를 날려도 데이터가 없는 건지 결과가 안 나옵니다. 다른 파일은 다 멀쩡합니다. 파일탐색기에서 battle.csv 열어도 데이터가 잘 있습니다. 혹시 문제에 대해 알고 계신 게 있으신가요? 감사합니다.
SQL 공부하다가 궁금한점이 생겼어요! 실행순서는 group by가 select 보다 먼저 실행되는 것으로 알고 있는데 select절에서 설정한 별칭을 왜 group by절에서 사용해도 되는걸까요? 현업에서는 팀마다 다르겠지만, 보통 어떻게 사용하시나요? 그리고 만약에 안된다면, 서브쿼리를 사용하시나요? 서브 쿼리를 사용하는 이유는 정확히 무엇인가요? 그리고 현업에서도 서브쿼리를 많이 사용하는지 궁금합니다! (아직 서브쿼리가 정확히 왜 필요한지 모르겠어요. 자바스크립트의 클로저라는 개념과 비슷한 개념일까요?) 마지막으로 아래 쿼리가 결과는 똑같은데 어떤게 더 바람직한 작성 방법일까요? (해당 강의는 4-6. 조건문(CASE WHEN, IF)입니다) 감사합니다 :) SELECT new_type1, COUNT(DISTINCT id) AS cnt FROM( SELECT *, CASE WHEN type1 IN ('Rock', 'Ground') OR type2 IN ('Rock', 'Ground') THEN 'Rock&Ground' ELSE type1 END AS new_type1, FROM `basic.pokemon` ) GROUP BY new_type1 SELECT CASE WHEN type1 IN ('Rock', 'Ground') OR type2 IN ('Rock', 'Ground') THEN 'Rock&Ground' ELSE type1 END AS new_type1, COUNT(DISTINCT id) AS cnt FROM `basic.pokemon` GROUP BY new_type1
수치형은 robustscaler를 사용하려고 하는데여 from sklearn.preprocessing import RobustScaler scaler = RobustScaler() cols = x_train.select_dtypes(exclude='object') for col in cols: x_train[col] = scaler.fit_transform(x_train[col]) x_test[col] = scaler.transform(x_test[col]) 이렇게 하면 ,ValueError: Expected 2D array, got 1D array instead: array=[ 888. 1308. 151. ... 173. 1244. 893.]. Reshape your data either using array.reshape(-1, 1) if your data has a single feature or array.reshape(1, -1) if it contains a single sample. 이런 오류가 납니다... 어떻게 수정해야 하나여
선생님 어제 알려주신대로 잘 따라했더니 연결 성공했습니다 정말 감사합니다. 한 가지 궁금한 게 더 있는데요! 정규식 사용해서 특수문자 등을 모두 제거하니 공백 문자열이 생겼는데요 trim 이나 is not null 이렇게 해도 null 값이 아니다보니 공백 문자값이 계속 추출이되서요 공백 문자값 자체를 데이터에서 제외하려면 어떻게 해야될까요?
글자가 겹쳐 써지거나, SELECT를 썼을 때 위처럼 파란색이 나타나지 않는 경우가 있어요. 그리고 드래그를 해도 파란색으로 보이지가 않아요. 제가 실수로 어떤 설정을 건드렸을까요? 혹은 제 노트북 내 잘못 설정한 것인지 문제를 발견하기 어려워요. 도와주실 수 있으실까요?
강의 관련해서 제가 조금 이해가 어려운 부분이 있는데 도와주실 수 있나요?(위의 이미지는 강의 영상을 캡쳐한 것입니다) 2번 문제가 '오전 6시에서 오후 6시 사이에 일어난 배틀의 수를 계산해주세요' 입니다. 그런데 EXTRACT(HOUR FROM battle_datetime) <= 18 을 해보면 빨간색 네모 상자에 표시해둔 것처럼 18:53분 즉, 오후 6시를 넘어서 나온 시간까지 데이터에 잡히는데요! 이럴 때는 어떻게 하면 좋을까요? 그냥 EXTRACT(HOUR FROM battle_datetime) < 18이 나을까요? (그런데 그러면 딱 정확히 18:00에 배틀이 이루어진 순간은 포함되지 않아서 고민이네요)