[vs code] pid must be a number 에러 해결

이미지
pid must be a number 에러 해결 pid must be a number 에러 vs code에서 코드 실행 시키면 pid must be a number 에러가 발생한다. 나는 C언어 코드 실행 시키니 발생했다. 해결 방법에는 2개 있다. 첫 번째 해결 방법 순서대로 해보자. 1. Settings 클릭 2. code runner 입력 3. 스크롤 내려주다가 -> Set the working directory에 경로가 있다면 지워주자. 코드 다시 한번 실행 해 보고 에러 뜬다면 4번 하자. 4. 스크롤 내리다가 -> Run In Terminal 박스 체크 4번은 OUTPUT 대신 TERMINAL에 실행 결과가 나타난다. 두 번째 해결 방법 첫 번째 방법으로 안되면 node.js를 설치하자. 1. 아래 링크 타서 LTS 버전 설치. https://nodejs.org/en/ 2. 설치 후 코드 실행 해보자.

[android studio] Caused by: org.gradle.api.internal.plugins.PluginApplicationException: Failed to apply plugin 'com.android.internal.application'. 에러 해결

Caused by: org.gradle.api.internal.plugins.PluginApplicationException: Failed to apply plugin 'com.android.internal.application'. 에러 해결 에러 발생 이유 간단한 문제다. 프로젝트 경로에 한글로 된 폴더가 있으면 에러가 발생한다. 예시 : C:\ 바탕 화면 \BlueBerry 에러 해결 프로젝트를 영어가 있는 경로로 곳으로 옮기면 된다. 예시 : C:\ Downloads \BlueBerry 해결 완료^^

[Virtual Box] 가상머신 에러 E_FAIL (0x80004005), (VERR_SUPLIB_PATH_NOT_CLEAN) 해결 방법

이미지
Failed to load R0 module D:\/VMMR0.r0: The path is not clean of leading double slashes: 'D:\/VMMR0.r0' (VERR_SUPLIB_PATH_NOT_CLEAN). E_FAIL (0x80004005) 인터페이스: IConsole {6ac83d89-6ee7-4e33-8ae6-b257b2e81be8} 해결 방법 에러 이유 ( VERR_SUPLIB_PATH_NOT_CLEAN) 결론 부터 말하자면 Virtual Box 경로가 C 드라이브가 아닌 D드라이브 같은 다른 위치에 설치되면 발생한다. VirtualboxVM.exe는 Virtualbox의 설치 폴더에 있어야 한다. virtualization support 설정, windows 보안 꺼도 에러가  해결 안되고 혹시 가상머신을 다른 경로에 저장했다면  이 방법을 써볼것. Vitual Box  재설치 후 경로 C드라이브로 설정 1. Vitual Box 제어판 가서 삭제한 후 재 설치한다. 2. 설치 하면서 가상 머신을 C드라이브로 설치한다. 괜히 D드라이브로 바꾸지 말 것.(그냥 경로 건들지 말자.) 에러 때문에 2시간 허비 했다. 에러 해결 방법에 대해 한국어 글이 없어서 누군가는 보라고 올림. 출처 :  https://forums.virtualbox.org/viewtopic.php?t=96445

[C언어] scanf 함수 에러 해결하기 (Erorr : C4996)

이미지
scanf 함수 에러 해결하기(C4996) scanf 에러 오류 C4996 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. Project2 C:\Project2\Project2\FileName.c 8 scanf 사용하면 위와 같은 에러가 뜬다. 대충 scanf 함수는 더 이상 안전성을 보장하지 않아서 scanf_s 함수를 사용하라고 한다. 따라서 scanf_s 함수 를 사용하는 것이 바람직하다. scanf 함수를 강제로 사용 할 수 있는 방법이 몇 가지 있지만 간단한 2가지를 알아보자. 예시 코드 #include <stdio.h> int main() { char input[16]; printf("문자 입력 : "); scanf("%s", input); printf("%s\n", input); return 0; } 위에 코드가 예시다. 실행 시키면 에러 발생한다. 이제 scanf를 강제로 사용해 보자. SDL 검사 끄기 첫 번째 방법은 SDL 검사를 끄면 된다. 속성 -> C/C++ -> 일반 -> SDL 검사 아니요 자 이제 다시 코드를 실행 시켜보면 잘 실행 된다. 전처리기 추가하기 두 번째 방법은 아래와 같이 main 함수 위에 전처리기 3줄을 선언해 주면 된다. #ifdef _MSC_VER #define _CRT_SECURE_NO_WARNINGS #endif 이것도 실행 시켜보면 잘된다. 다른 방법들은 복잡해서 굳이 알 필요가 없다. 마치며 처음에 말했던 것 처럼 scaf_s 함수 사용을 권장한

[C언어] 문자열 입력, 문자열 출력하기(scanf_s)

이미지
[C언어] 문자열 입력, 문자열 출력하기(scanf_s) 문자열 입력, 출력 함수들 문자열 입력 함수는 대표적으로 세 가지가 있다. 1. scanf_s 2. scanf 3. gets 문자열 출력은 printf 사용하면 된다. 안전성 문제 때문에  scanf_s 함수 사용을  마이크로 소프트에서 적극 권장하고 있다. scanf_s 함수 사용하여 문자열 입력 #include <stdio.h> int main() { char input[16]; printf("문자 입력 : "); scanf_s("%s", input, sizeof(input)); printf("%s\n", input); return 0; } 1. char를 배열로 선언해주고 %c 대신 %s로 입력 받으면 된다. 2. 주의 할 점은 sizeof(input)처럼 크기를 지정해 줘야 한다. 크기를 지정하지 않으면 에러 발생. C언어로 문자, 문자열 입력시 scanf_s를 사용하는 것이 바람직하다. 결과 아래부터는 사용을 권장하지 않는 함수다. gets 함수 사용하여 문자열 입력 #include <stdio.h> int main() { char input[16]; printf("문자 입력 : "); gets(input); printf("%s\n", input); return 0; } 결과 scanf 함수 사용하여 문자열 입력 #include <stdio.h> int main() { char input[16]; printf("문자 입력 : "); scanf("%s", input); printf("%s\n", input); return 0; }

[머신러닝] 로지스틱 회귀(logistic regression)

이미지
로지스틱 회귀(logistic regression) 로지스틱 회귀란? 로지스틱 회귀 는 이름은 회귀이지만 분류 모델 이다. 로지스틱 회귀는   선형 회귀 와 마찬가지로 선형 방정식 을 하지만 선형 회귀와 다르게 시그모이드 함수 나 소프트맥스 함수 를 사용하여 클래스 를 예측한다. 로지스틱 회귀로 이진 분류 할 때는 시그모이드 함수 를,  다중 분류 할 때는 소프트맥스 함수 를 사용한다. 데이터 준비 데이터를 준비해 보자. 아래 링크  csv 파일을 사용한다. https://bit.ly/fish_csv_data csv 파일 내용의 일부다. import pandas as pd # 데이터 가져오기 ------------------------------------------------------------------------- fish = pd.read_csv( 'https://bit.ly/fish_csv_data' ) # 입력 데이터 준비 fish_input = fish[[ 'Weight' , 'Length' , 'Diagonal' , 'Height' , 'Width' ]].to_numpy() print (fish_input) # 타깃 데이터 준비 fish_target = fish[ 'Species' ].to_numpy() print (fish_target) # 훈련 , 테스트 세트 나누기 from sklearn.model_selection import train_test_split train_input, test_input, train_target, test_target = train_test_split( fish_input, fish_target, random_state = 42 ) # 데이터 전처리 ( 표준화 ) from sklearn.preprocessing import StandardScaler s

[머신러닝] 규제(regulariztion)와 릿지 회귀(ridge), 라쏘 회귀(lasso)

이미지
규제(regulariztion)와 릿지(ridge), 라쏘(lasso) 규제란? 규제는 머신러닝 모델이 훈련 세트에 과대적합  되지 않도록 만드는 것이다. 즉, 모델이 훈련 세트를 과도하게 훈련하지 못하도록 훼방을 놓는 것이다. 과대적합(Over Fitting) 훈련세트 의 점수가 굉장히 좋은데,  테스트 세트 에서 점수가 심하게 나쁘다면  과대적합 (overfitting)되었다고 말한다. 과대적합 예제 과대적합 예제를 토대로 규제를 적용하는 방법에 알아보자. 1. 예제를 보면 PolynomialFeatures클래스의 dgree 속성을 5 를 설정하여 5제곱 까지 특성을 만들었다. 2. train_poly.shpae 로 배열의 크기를 확인하니 55개 의 속성이 만들어졌다. 3. 훈련 세트와 테스트 세트를 평가 해보니 점수가 엄청 차이 나는 과대적합 이 발생했다. 과대 적합 이 일어난 이유는 특성의 개수 가 너무 많기 때문이다. 특성 개수를 늘리면 모델은 거의 완벽하게 훈련이 가능하지만 너무 많으면 과대 적합 이 발생한다.  import pandas as pd # 특성 가져오기 df = pd.read_csv( 'https://bit.ly/perch_csv_data' ) perch_full = df.to_numpy() #print(perch_full) # 타깃 데이터 import numpy as np perch_weight = np.array([ 5.9 , 32.0 , 40.0 , 51.5 , 70.0 , 100.0 , 78.0 , 80.0 , 85.0 , 85.0 , 110.0 , 115.0 , 125.0 , 130.0 , 120.0 , 120.0 , 130.0 , 135.0 , 110.0 , 130.0 , 150.0 , 145.0 , 150.0 , 170.0 , 225.0 , 145.0 , 188.0 , 180.0 , 197.0 , 21