Loading...
2022. 4. 19. 03:52

이차원 배열끼리 덧셈은 어떻게 효율적으로 할 수 있을까

1. 문제 https://programmers.co.kr/learn/courses/30/lessons/92344 코딩테스트 연습 - 파괴되지 않은 건물 [[5,5,5,5,5],[5,5,5,5,5],[5,5,5,5,5],[5,5,5,5,5]] [[1,0,0,3,4,4],[1,2,0,2,3,2],[2,1,0,3,1,2],[1,0,1,3,3,1]] 10 [[1,2,3],[4,5,6],[7,8,9]] [[1,1,1,2,2,4],[1,0,0,1,1,2],[2,2,0,2,0,100]] 6 programmers.co.kr N*M 크기의 행렬 모양의 게임 맵이 있습니다. 이 맵에는 내구도를 가진 건물이 각 칸마다 하나씩 있습니다. 적은 이 건물들을 공격하여 파괴하려고 합니다. 건물은 적의 공격을 받으면 내구도가 감소하..

2022. 2. 8. 01:28

데이터분석 전문가(ADP)를 위한 R프로그래밍 기초편5

1. 데이터프레임 데이터에서 각각의 변수에 해당하는 열들의 모임 data.frame(벡터, 벡터, 벡터, ...) 벡터들로 데이터셋을 생성함 혹은 열 변수벡터로 데이터셋을 생성 혹은 data.frame(변수1이름=값, 변수2이름=값, 변수3이름=값,.....) > a b c d d a b c 1 1 5 9 2 2 6 10 3 3 7 11 4 4 8 12 > new new a b c d 1 1 2 3 a N=100 > dtfm dtfm$lab [1] "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" [42] "" "" "" "" "" ""..

데이터분석 전문가(ADP)를 위한 R프로그래밍 기초편4

1. 벡터 벡터의 원소들은 동질적 한 벡터의 모든 원소는 같은 자료형 또는 같은 모드(mode)를 가진다. 예를 들어 문자형과 수치형을 넣으면 모두 문자형으로 통일된다 > v v [1] "yun" "13" "22" 벡터는 위치로 indexing가능 v[2]는 v의 2번째 원소 벡터는 인덱스를 통해 여러 개의 원소로 구성된 하위 벡터를 반환할 수 있다 v[c(2,3)]은 v벡터의 2번째, 3번째 원소로 구성된 하위벡터 인덱스에 -를 붙이면 해당 번호는 제외한 나머지 번호의 원소를 가져옴 v[-c(2,3)]은 2,3번째 값을 제외한 하위벡터 > v v[2] [1] 21 > v[c(2,3)] [1] 21 42 > v[-c(2,3)] [1] 33 32 5 4 432 21 벡터의 원소들도 이름을 가질 수 있다 >..

2022. 1. 12. 22:46

선형변환으로서의 행렬이 가지는 의미

1. 선형변환으로 생각하는 행렬 행렬은 벡터공간에서 두 데이터 사이 연결관계를 나타내는 연산자로 생각할 수도 있다. (선형변환) 벡터 $x$에 행렬 $A$를 곱하여 다른 차원의 벡터 $z$로 변환시킴 기계학습의 선형모델들은 위와 같은 선형변환 행렬곱을 이용해서 데이터 $x$의 패턴($z$)을 추출하거나 압축시킨다. 행렬 A의 연산을 거꾸로 되돌리는 행렬이 A의 역행렬 $A$의 역행렬은 $A$의 행과 열의 숫자가 같고 $A$의 행렬식이 0이 아니어야 존재한다 2. np.linalg.inv() numpy의 np.linalg.inv()는 역행렬이 존재하는 행렬의 역행렬을 구해준다 컴퓨터 연산 오차로 인해 자기 자신과 역행렬을 곱해보면 정확히 항등행렬이 나오진 않고 비슷한 값으로 나온다 X와 np.linalg...

2022. 1. 11. 21:07

행렬의 기본 연산들

1. 전치행렬 전치행렬(transpose)은 행과 열의 index를 서로 뒤바꾼 행렬 2. 행렬의 기본 수학연산 같은 차원을 가지는 두 행렬은 대응하는 성분끼리 연산이 가능하다 3. 행렬의 곱셈 행렬의 일반적인 곱셈은 조금 특이하게 정의된다. 두 행렬 $X,Y$의 행렬곱 $XY$는 $X$의 열의 수와 $Y$의 행의 수가 같을 때 정의되고 $X$의 $i$번째 행벡터와 $j$번째 열벡터의 내적을 성분으로 갖는다. 행렬의 곱셈은 교환법칙이 성립하지 않는다 numpy array에서 두 행렬의 곱은 @연산자를 활용 import numpy as np X = np.array([[1,-2,3],[7,5,0],[-2,-1,2]]) Y = np.array([[0,1],[1,-1],[-2,1]]) X@Y ##matrix p..

2022. 1. 10. 23:05

행렬의 기하학적 의미

1. 행렬의 정의 벡터를 원소로 가지는 2차원 배열이다. $n \times m$행렬 $X$는 다음과 같이 간단하게 나타낼 수 있다. $$X= \left ( x_{ij} \right )$$ 여기서 $i$는 행 인덱스, $j$는 열 인덱스 $x_{ij}$는 행렬 $X$의 $i$번째 행의 $j$번째 열에 있는 원소 2. 행렬의 분할 $i$번째 행을 기준으로 (빨간색 부분) 행벡터 분할하여 $n \times 1$행렬처럼 다룰 수도 있게 된다 행렬의 $j$열을 기준으로 열벡터 분할하여 $1 \times m$ 행렬처럼 다룰 수 있게 된다 3. 행렬의 기하학적 의미 벡터가 공간 상 하나의 데이터를 나타낸다면, 행렬은 공간 상 여러개의 데이터를 하나로 묶어서 표현한 것이다