본문 바로가기
반응형

파이썬/통계분석96

[파이썬 강의] 96. 판다스 시리즈의 평균,표준편차,최댓값,최솟값 리즈를 하나 정의합시다. >>> import pandas as pd >>> s1=pd.Series([1,2,3,4,5]) >>> s1 0 1 1 2 2 3 3 4 4 5 dtype: int64 평균,표준편차,최댓값,최솟값을 구해봅시다. 코드 평균 >>> s1.mean() 3.0 표준편차 >>> s1.std() 1.5811388300841898 최댓값 >>> s1.max() 5 최솟값 >>> s1.min() 1 2021. 11. 30.
[파이썬 강의] 95. 넘파이 배열(array)로 판다스 시리즈(Series)정의하기 numpy와 pandas 패키지를 불러옵니다. >>> import numpy as np >>> import pandas as pd numpy 배열을 하나 정의합시다. >>> ar=np.array([1,2,3]) >>> ar array([1, 2, 3]) 배열을 이용하여 시리즈를 생성합시다. >>> s1=pd.Series(ar) >>> s1 0 1 1 2 2 3 dtype: int32 2021. 11. 29.
[파이썬 강의] 94. 시리즈(Series) 사이의 사칙연산 시리즈를 두개 정의해봅시다. 행과 열의 이름은 지정하지 않겠습니다. >>> import pandas as pd >>> s1=pd.Series([1,2,3,4,5]) >>> s1 0 1 1 2 2 3 3 4 4 5 dtype: int64 >>> s2=pd.Series([10,20,30,40,50]) >>> s2 0 10 1 20 2 30 3 40 4 50 dtype: int64 두 시리즈를 더해봅시다. >>> s1+s2 0 11 1 22 2 33 3 44 4 55 dtype: int64 두 시리즈를 빼봅시다. >>> s1-s2 0 -9 1 -18 2 -27 3 -36 4 -45 dtype: int64 두 시리즈를 곱해봅시다. >>> s1*s2 0 10 1 40 2 90 3 160 4 250 dtype: i.. 2021. 11. 26.
[파이썬 강의] 93. 시리즈(Series)와 숫자의 사칙연산 시리즈를 하나 정의해봅시다. 행과 열의 이름은 지정하지 않겠습니다. >>> import pandas as pd >>> s1=pd.Series([1,2,3,4,5]) >>> s1 0 1 1 2 2 3 3 4 4 5 dtype: int64 숫자를 더해봅시다. >>> s1+5 0 6 1 7 2 8 3 9 4 10 dtype: int64 숫자를 빼봅시다. >>> s1-5 0 -4 1 -3 2 -2 3 -1 4 0 dtype: int64 숫자를 곱해봅시다. >>> s1*5 0 5 1 10 2 15 3 20 4 25 dtype: int64 숫자를 나눠봅시다. >>> s1/5 0 0.2 1 0.4 2 0.6 3 0.8 4 1.0 dtype: float64 각 행별로 연산이 적용됩니다. 2021. 11. 25.
[파이썬 강의] 92. 시리즈(Series)의 행 삭제 시리즈를 하나 정의해봅시다. 데이터, 행이름(index), 열이름(name) 순서로 입력합니다. 데이터는 리스트 형태로 입력해줍니다. >>> import pandas as pd >>> s1=pd.Series([1,2,3,4,5],index=['A','B','C','D','E'],name='my data') >>> s1 A 1 B 2 C 3 D 4 E 5 Name: my data, dtype: int643 원소를 삭제할 때는 del명령어 또는 drop 메소드를 사용합니다. del 명령어 이용 A행을 삭제해봅시다. >>> del s1['A'] >>> s1 B 2 C 3 D 4 E 5 Name: my data, dtype: int64 drop 메소드 이용 D행을 삭제해봅시다. >>> s1.drop('D') B.. 2021. 11. 24.
[파이썬 강의] 91. 시리즈(Series)의 원소 수정 시리즈를 하나 정의해봅시다. 데이터, 행이름(index), 열이름(name) 순서로 입력합니다. 데이터는 리스트 형태로 입력해줍니다. >>> import pandas as pd >>> s1=pd.Series([1,2,3,4,5],index=['A','B','C','D','E'],name='my data') >>> s1 A 1 B 2 C 3 D 4 E 5 Name: my data, dtype: int643 1) 행이름을 이용한 수정 >>> s1['A']=10 >>> s1 A 10 B 2 C 3 D 4 E 5 Name: my data, dtype: int64 2) 인덱스를 이용한 수정 >>> s1[0]=100 >>> s1 A 100 B 2 C 3 D 4 E 5 Name: my data, dtype: int64 2021. 11. 23.
[파이썬 강의] 90. 시리즈(Series)의 행 이름 수정 시리즈를 하나 정의해봅시다. 데이터, 행이름(index), 열이름(name) 순서로 입력합니다. 데이터는 리스트 형태로 입력해줍니다. >>> import pandas as pd >>> s1=pd.Series([1,2,3,4,5],index=['A','B','C','D','E'],name='my data') >>> s1 A 1 B 2 C 3 D 4 E 5 Name: my data, dtype: int643 행 이름 하나를 수정하려고 시도해봅시다. >>> s1.index[0]='AA' Traceback (most recent call last): File "", line 1, in s1.index[0]='AA' File "C:\Users\Jihun\AppData\Local\Programs\Python\Pyt.. 2021. 11. 22.
[파이썬 강의] 89. 시리즈(Series)의 행 순서 변경 시리즈를 하나 정의해봅시다. 데이터, 행이름(index), 열이름(name) 순서로 입력합니다. 데이터는 리스트 형태로 입력해줍니다. >>> import pandas as pd >>> s1=pd.Series([1,2,3,4,5],index=['A','B','C','D','E'],name='my data') >>> s1 A 1 B 2 C 3 D 4 E 5 Name: my data, dtype: int643 행의 순서를 바꾸는 방법을 알아봅시다. 행의 순서를 B A E D C 로 바꾸고 싶다면 아래와 같이 입력하면 됩니다. >>> s1=s1[['B','A','E','D','C']] >>> s1 B 2 A 1 E 5 D 4 C 3 Name: my data, dtype: int64 숫자 인덱싱을 이용하여 바꿀 .. 2021. 11. 19.
[파이썬 강의] 88. 시리즈(Series)의 행이름의 인덱싱과 슬라이싱 시리즈를 하나 정의해봅시다. 데이터, 행이름(index), 열이름(name) 순서로 입력합니다. 데이터는 리스트 형태로 입력해줍니다. >>> import pandas as pd >>> s1=pd.Series([1,2,3,4,5],index=['A','B','C','D','E'],name='my data') >>> s1 A 1 B 2 C 3 D 4 E 5 Name: my data, dtype: int643 행이름에 접근해봅시다. index 메소드를 사용합니다. >>> s1.index Index(['A', 'B', 'C', 'D', 'E'], dtype='object') 위 결과에서 다시 인덱싱과 슬라이싱이 가능합니다. 행이름 중 'B'에 접근해봅시다. >>> s1.index[1] 'B' 슬라이싱을 이용하여.. 2021. 11. 18.
[파이썬 강의] 87.시리즈(Series)의 인덱싱과 슬라이싱 시리즈를 하나 정의해봅시다. 데이터, 행이름(index), 열이름(name) 순서로 입력합니다. 데이터는 리스트 형태로 입력해줍니다. >>> import pandas as pd >>> s1=pd.Series([1,2,3,4,5],index=['A','B','C','D','E'],name='my data') >>> s1 A 1 B 2 C 3 D 4 E 5 Name: my data, dtype: int643 인덱싱을 해봅시다. 원리는 리스트나 배열같은 자료구조와 동일합니다. 첫번째 원소에 접근해봅시다. >>> s1[0] 1 세번째 원소에 접근해봅시다. >>> s1[2] 3 첫번째와 세번째 원소에 접근해봅시다. >>> s1[[0,2]] A 1 C 3 Name: my data, dtype: int64 슬라이싱을.. 2021. 11. 17.
[파이썬 강의] 86.시리즈(Series)에서 행이름을 이용하여 데이터에 접근 시리즈를 하나 정의해봅시다. 데이터, 행이름(index), 열이름(name) 순서로 입력합니다. 데이터는 리스트 형태로 입력해줍니다. >>> import pandas as pd >>> s1=pd.Series([1,2,3,4,5],index=['A','B','C','D','E'],name='my data') >>> s1 A 1 B 2 C 3 D 4 E 5 Name: my data, dtype: int643 행이름을 이용하여 데이터에 접근해봅시다. A행의 원소에 접근하는 방법은 아래와 같습니다. >>> s1['A'] 1 여러행에 동시에 접근할 수도 있습니다. A행과 C행에 접근해봅시다. >>> s1[['A','C']] A 1 C 3 Name: my data, dtype: int64 슬라이싱도 가능합니다. >.. 2021. 11. 16.
[파이썬 강의] 85.시리즈(Series)에서 데이터,행이름,열이름에 접근하기 시리즈를 하나 정의해봅시다. 데이터, 행이름(index), 열이름(name) 순서로 입력합니다. 데이터는 리스트 형태로 입력해줍니다. >>> import pandas as pd >>> s1=pd.Series([1,2,3,4,5],index=['A','B','C','D','E'],name='my data') >>> s1 A 1 B 2 C 3 D 4 E 5 Name: my data, dtype: int64 메소드를 이용하여 데이터, 행이름, 열이름에 접근할 수 있습니다. 1) 데이터에 접근 (values 메소드) >>> s1.values array([1, 2, 3, 4, 5], dtype=int64) 2) 행이름에 접근 >>> s1.index Index(['A', 'B', 'C', 'D', 'E'], dty.. 2021. 11. 15.
[파이썬 강의] 84.판다스 시리즈 정의해보기 지난시간에 판다스를 설치했습니다. 판다스 패키지는 아래 두가지 자료구조를 제공합니다. - Series - DataFrame 오늘은 시리즈 자료구조를 배워봅시다. 시리즈는 아래와 같이 엑셀의 한 열이라고 생각하시면 됩니다. 엑셀과 완전히 같지는 않고 차이가 있습니다. 엑셀에서는 열의이름이 A,B,C,D...로 행의 이름이 1,2,3,...으로 정해져 있지만 시리즈에서는 열과 행의 이름을 설정할 수 있습니다. 시리즈를 하나 정의해봅시다. 데이터, 행이름(index), 열이름(name) 순서로 입력합니다. 데이터는 리스트 형태로 입력해줍니다. >>> import pandas as pd >>> s1=pd.Series([1,2,3,4,5],index=['A','B','C','D','E'],name='my data.. 2021. 11. 12.
[파이썬 강의] 83.판다스 소개 및 설치 우리는 아래의 자료구조들을 배우기로 계획했었습니다. - 리스트 - 튜플 - 딕셔너리 - 집합 - Array (넘파이 패키지) - Series (판다스 패키지) - DataFrame (판다스 패키지) Array 까지 배운 상태이구요. 두개의 자료구조가 남아있습니다. 시리즈와 데이터프레임인데요. 둘다 판다스라는 패키지에서 제공하는 자료구조입니다. 시리즈는 엑셀의 한 열, 데이터프레임은 엑셀시트와 비슷합니다. 엑셀을 사용해 보신 분들은 아시겠지만 다양한 데이터를 다루는데 매우 편리합니다. 시리즈와 데이터프레임 역시 데이터를 편하게 다루기 위해 만들어진 자료구조들입니다. 이제 판다스를 설치해봅시다. 커멘드 창을 열고 아래 명령어를 입력하면 됩니다. pip install pandas 설치가 끝나면 파이썬을 열고 .. 2021. 11. 12.
[파이썬 강의] 82. 지금까지 배운 내용과 앞으로 배울 내용 1. 배운 내용 자료형 - 숫자형 - 문자열 - 논리형 자료구조 - 리스트 - 튜플 - 딕셔너리 - 집합 - Array (넘파이 패키지) 연산자 - 산술연산자 - 비교연산자 - 논리연산자 2. 앞으로 배울 내용 자료구조 - Series (판다스 패키지) - DataFrame (판다스 패키지) 연산자 - 식별연산자 할당과 복사 - 얕은복사, 깊은복사 조건문 - if - if else - if elif else 반복문 - for - while - pass, greak continue 함수 모듈 클래스 그래프 통계분석 앞으로 배울 내용은 추가될 수 있습니다. 2021. 11. 9.
[파이썬 강의] 81. 표본추출 (이항분포) 커이제곱분포에서 표본을 추출해봅시다. 아래와 같은 형식으로 입력합니다. np.random.binomial(n,p,원소 수) np.random.binomial(n,p, [shape]) 예를 들어봅시다. 시행횟수가 20회이고, 발생확률이 0.2인 이항분포에서 원소가 10개인 표본을 추출해봅시다. >>> import numpy as np >>> np.random.binomial(20,0.2,10) array([3, 1, 7, 6, 6, 2, 4, 4, 3, 7]) 같은 분포에서 2행5열의 표본을 추출해봅시다. >>> np.random.binomial(20,0.2,[2,5]) array([[5, 4, 8, 5, 5], [2, 4, 3, 4, 6]]) 2021. 11. 8.
[파이썬 강의] 80. 표본추출 (카이제곱분포) 커이제곱분포에서 표본을 추출해봅시다. 아래와 같은 형식으로 입력합니다. np.random.chisquare(자유도, 원소 수) np.random.chisquare(자유도, [shape]) 예를 들어봅시다. 자유도가 30인 카이제곱분포에서 원소가 10개인 표본을 추출해봅시다. >>> import numpy as np >>> np.random.chisquare(30,10) array([20.27882107, 14.31861792, 27.2574334 , 29.40865448, 26.5177963 , 32.26811378, 26.58053564, 40.92194971, 30.55410323, 38.39466493]) 자유도가 30인 t분포에서 2행5열의 표본을 추출해봅시다. 위 결과와 얼핏 같아 보이지만 아닙.. 2021. 11. 5.
[파이썬 강의] 79. 표본추출 (t분포) t분포에서 표본을 추출해봅시다. 아래와 같은 형식으로 입력합니다. np.random.standard_t(자유도, 원소 수) np.random.standard_t(자유도, [shape]) 예를 들어봅시다. 자유도가 30인 t분포에서 원소가 10개인 표본을 추출해봅시다. >>> import numpy as np >>> np.random.standard_t(30,10) array([ 0.85819086, -0.22148067, -0.28937547, 1.05713019, 0.85156911, 0.42696392, -0.0969401 , -3.25730258, -0.91213918, 1.42497941]), 0.37697573, 1.55891432, 0.56331007, 0.93739202]) 자유도가 30인 .. 2021. 11. 4.
[파이썬 강의] 78. 표본추출 (표준정규분포, 정규분포) 표준정규분포에서 표본을 추출해봅시다. np.random.randn(원소 수) np.random.randn(행의 수, 열의 수) ... 일반화하여 표현하면 아래와 같습니다. np.random.rand(shape) 예를 들어봅시다. 원소가 10개인 표본을 추출해봅시다. >>> np.random.randn(10) array([-0.46918572, -0.01478616, -0.68911651, 1.14858756, -1.97550475, -1.66843948, 0.37697573, 1.55891432, 0.56331007, 0.93739202]) 2행5열의 표본을 추출해봅시다. 위 결과와 얼핏 같아 보이지만 아닙니다. 아래 결과는 리스트가 2중 중첩입니다. >>> np.random.randn(2,5) arra.. 2021. 11. 3.
[파이썬 강의] 77. 표본추출 (균등분포) 0~1사이 실수값을 갖는 균등분포에서 표본을 추출해봅시다. 코드는 아래와 같은 형식으로 사용합니다. np.random.rand(원소 수) np.random.rand(행의 수, 열의 수) ... 일반화하여 표현하면 아래와 같습니다. np.random.rand(shape) 예를 들어봅시다. 원소가 10개인 표본을 추출해봅시다. >>> np.random.rand(10) array([0.93551792, 0.67158859, 0.66331052, 0.87592483, 0.56564499, 0.14275756, 0.22003448, 0.01317308, 0.82143447, 0.71668732]) 2행5열의 표본을 추출해봅시다. 위 결과와 얼핏 같아 보이지만 아닙니다. 아래 결과는 리스트가 2중 중첩입니다. >>.. 2021. 11. 2.
[파이썬 강의] 76. 표본추출 (구간 사이 정수값) 구간을 정하고, 해당 구간 사이에 있는 정수값을 임의로 추출하는 방법입니다. 넘파이 패키지의 random.randint 메소드를 사용합니다. 형식은 아래와 같습니다. np.random.randint(시작값,끝값+1) 끝값+1인 것에 주의해주세요. (1,5)를 입력하면 1,2,3,4 중에서 정수가 추출됩니다. 예를 들어봅시다. >>> np.random.randint(1,5) 3 >>> np.random.randint(1,5) 3 >>> np.random.randint(1,5) 4 >>> np.random.randint(1,5) 4 >>> np.random.randint(1,5) 1 >>> np.random.randint(1,5) 4 >>> np.random.randint(1,5) 2021. 11. 1.
[파이썬 강의] 75. 배열 원소의 최댓값과 최솟값 배열의 최댓값을 구할 때는 max 메소드를, 최솟값을 구할 때는 min 메소드를 사용합니다. 2차원 이상의 배열에서는 axis 옵션을 사용할 수 있습니다. 1차원 배열 1차원 배열을 하나 정의하고 최댓값과 최솟값을 구해봅시다. >>> import numpy as np >>> v1=np.array([1,2,3,4,5]) >>> v1.max() 5 >>> v1.min() 1 2차원 배열 2차원 배열을 하나 정의하고 합을 구해봅시다. >>> m1=np.array([[1,2,3],[10,20,30]]) >>> m1.max() 30 >>> m1.min() 1 axis 옵션을 적용해봅시다. >>> m2=np.array([[1,2,3],[4,5,1]]) >>> m2.max(axis=0) array([4, 5, 3]).. 2021. 10. 29.
[파이썬 강의] 74. 배열 원소의 평균, 분산, 표준편차 배열의 평균을 구할 때는 mean 매소드를 사용합니다. 2차원 이상의 배열에서는 axis 옵션을 사용할 수 있습니다. 1차원 배열의 평균 1차원 배열을 하나 정의하고 평균을 구해봅시다. >>> import numpy as np >>> v1=np.array([1,2,3,4,5]) >>> v1.mean() 3.0 2차원 배열의 평균 2차원 배열을 하나 정의하고 평균을 구해봅시다. >>> m1=np.array([[1,2,3],[10,20,30]]) >>> m1.mean() 11.0 axis 옵션을 적용해봅시다. >>> m1.mean(axis=0) array([ 5.5, 11. , 16.5]) >>> m1.mean(axis=1) array([ 2., 20.]) axis0은 [1,2,3]->[10,20,30] 이.. 2021. 10. 28.
[파이썬 강의] 73. 배열 원소의 합 배열의 합을 구할 때는 sum 매소드를 사용합니다. 2차원 이상의 배열에서는 axis 옵션을 사용할 수 있습니다. 1차원 배열 1차원 배열을 하나 정의하고 합을 구해봅시다. >>> import numpy as np >>> v1=np.array([1,2,3,4,5]) >>> v1.sum() 15 2차원 배열 2차원 배열을 하나 정의하고 합을 구해봅시다. >>> m1=np.array([[1,2,3],[10,20,30]]) >>> m1.sum() 66 axis 옵션을 적용해봅시다. >>> m1.sum(axis=0) array([11, 22, 33]) >>> m1.sum(axis=1) array([ 6, 60]) axis0은 [1,2,3]->[10,20,30] 이므로 리스트 [1,2,3]과 [10,20,30]의.. 2021. 10. 27.
[파이썬 강의] 72. 두 값과 원하는 개수를 지정하는 등차수열 두 값과 원하는 개수를 지정하여 등차수열을 생성하는 방법입니다. 예를들어 1과 7이라는 두 값을 지정하고, 개수를 네개로 지정하면 아래와 같은 배열이 생성되는 것입니다. 두 값 사이를 등간격으로 잘라서 숫자를 만들어 줍니다. 1 3 5 7 함수는 넘파이 패키지의 linspace 를 사용합니다. 아래와 같은 형식으로 사용합니다. linspace(첫항,끝항,개수) 아래는 위 예시를 코드로 구현한 것입니다. >>> import numpy as np >>> np.linspace(1,7,4) array([1., 3., 5., 7.]) 2021. 10. 27.
[파이썬 강의] 71. 등차수열 배열 생성하기 등차수열 배열을 생성할 때는 넘파이 패키지의 arange 함수를 사용합니다. 아래와 같은 형식으로 사용합니다. np.arange(시작값,끝값,간격) 시작값이상이고, 끝값 미만인 배열이 생성됩니다. 끝항 '미만'이라는 것을 기억합시다. 구간으로는 [첫항,끝항) 이라고 표현할 수 있습니다. 반열린구간입니다. 예를들어봅시다. np.arrange(1,6,2) 라고 입력하면 얼마가 반환될까요. 1부터 2씩 늘려가는 것이니까. 1 3 5 가 생성됩니다. >>> import numpy as np >>> np.arange(1,6,2) array([1, 3, 5]) 하나의 값만 입력할 경우 첫항이 0이고 길이가 입력값인 배열이 생성됩니다. >>> np.arange(5) array([0, 1, 2, 3, 4]) 2021. 10. 26.
[파이썬 강의] 70. 모든 값이 지정값인 배열 원하는 크기로 만들기 (full) 사용자가 지정한 값을 갖는 원하는 크기의 배열을 만들 때는 numpy 모듈의 full 함수를 사용합니다. 원하는 크기의 배열을 만들 수 있습니다. 1차원 배열 만들기 모든 원소가 15이고, 길이가 10인 1차원 배열을 만들어 봅시다. 첫번째 입력값이 길이입니다. >>> import numpy as np >>> np.full(10,15) array([15, 15, 15, 15, 15, 15, 15, 15, 15, 15]) 2차원 배열 만들기 모든 값이 15이고, 모양이 3행5열인 2차원 배열을 만들어봅시다. 행과 열의 수를 리스트 형태로 입력합니다. 입력값은 축 개념과 동일합니다. >>> np.full([3,5],15) array([[15, 15, 15, 15, 15], [15, 15, 15, 15, 15.. 2021. 10. 25.
[파이썬 강의] 69. 모든 값이 1인 배열 원하는 크기로 만들기 (ones) 모든값이 1인 배열을 만들 때는 numpy 모듈의 ones 함수를 사용합니다. 원하는 크기의 배열을 만들 수 있습니다. 1차원 배열 만들기 모든 원소가 1이고, 길이가 10인 1차원 배열을 만들어 봅시다. import numpy as np >>> import numpy as np >>> np.ones(10) array([1., 1., 1., 1., 1., 1., 1., 1., 1., 1.]) 2차원 배열 만들기 모든 값이 1이고, 모양이 3행5열인 2차원 배열을 만들어봅시다. 행과 열의 수를 리스트 형태로 입력합니다. 입력값은 축 개념과 동일합니다. >>> np.ones([3,5]) array([[1., 1., 1., 1., 1.], [1., 1., 1., 1., 1.], [1., 1., 1., 1., .. 2021. 10. 25.
[파이썬 강의] 68. 모든 값이 0인 배열 원하는 크기로 만들기 (zeros) 모든값이 0인 배열을 만들 때는 numpy 모듈의 zeros 함수를 사용합니다. 원하는 크기의 배열을 만들 수 있습니다. 1차원 배열 만들기 모든 원소가 0이고, 길이가 10인 1차원 배열을 만들어 봅시다. import numpy as np >>> import numpy as np >>> np.zeros(10) array([0., 0., 0., 0., 0., 0., 0., 0., 0., 0.]) 2차원 배열 만들기 모든 값이 0이고, 모양이 3행5열인 2차원 배열을 만들어봅시다. 행과 열의 수를 리스트 형태로 입력합니다. 입력값은 축 개념과 동일합니다. >>> np.zeros([3,5]) array([[0., 0., 0., 0., 0.], [0., 0., 0., 0., 0.], [0., 0., 0., 0.. 2021. 10. 25.
[파이썬 강의] 67. 배열 요소 삭제하기 배열에 요소를 추가할 때는 np.delete 라는 함수를 사용합니다. 사용 방법은 아래와 같습니다. np.delete(배열, 인덱스, 축) 1차원 배열을 예로 들어봅시다. 원소가 1,2,3,4인 1차원 배열을 하나 정의하겠습니다. >>> import numpy as np >>> v1=np.array([1,2,3,4]) 두번째 원소를 삭제하고 싶은 경우 index에 1을 입력하면 됩니다. >>> np.delete(m1,1,axis=0) array([1, 3, 4]) 2차원 배열을 예로 들어봅시다. 2차원 배열을 하나 정의하겠습니다. >>> m1=np.array([[1,2],[3,4]]) [3,4] 를 제거해봅시다. >>> np.delete(m1,1,axis=0) array([[1, 2]]) 2차원 배열을 .. 2021. 10. 22.
반응형