본문 바로가기

Contact English

【Python】 파이썬 문법

 

파이썬 문법

 

추천글 : 【Python】 파이썬 목차 


1. 개요 [본문]

2. 문법 [본문]


a. R 개요


 

1. 개요 [목차]

⑴ 파이썬의 장점 

장점 1. 앱 개발 등에서 백엔드 구현이 용이함

장점 2. 딥러닝 툴이 잘 나와 있음

장점 3. 오픈 커뮤니티를 기반으로 다양한 어플리케이션이 가능

장점 4. 데이터 시각화가 상당히 잘 돼 있음

⑵ 파이썬과 다른 언어의 비교 

 

language open source speed compute time library extent ease of entry costs interoperability
Python Yes 16 62 80 85 10 90
Julia Yes 2941 0.34 100 30 10 90
R Yes 1 745 100 80 15 90
IDL No 67 14.77 50 88 100 20
Matlab No 147 6.8 75 95 100 20
Scala Yes 1428 0.7 50 30 20 40
C Yes 1818 0.55 100 30 10 99
Fortran Yes 1315 0.76 95 25 15 95

Table. 1. 파이썬과 다른 언어의 비교

 

 

2. 문법 [목차]

파이썬은 여러 개의 값을 동시에 return할 수 있음 

yield는 값을 한 번에 모두 반환하지 않고, 필요한 시점에 하나씩 반환

 back space \ 를 통해 줄바꿈을 하여 multi-line code를 짤 수 있음

한 줄 문자열은 "~" 혹은 '~'로 나타내고, 여러 줄 문자열은 """~""" 혹은 '''~'''로 나타냄

 adata.var_names=[i.upper() for i in list(adata.var_names)] 

① 의미 : adata.var_names에는 list(data.var_names)에 있는 각 i를 대문자로 한 것으로 저장

if issparse(counts.X):counts.X=counts.X.A 

① 의미 : counts.X가 sparse matrix이면 counts.X에 counts.X.A 값을 넣음

pd.DataFrame([(str(i),str(j)) for i in range(4) for j in range(i+1, 4)])

 

	0	1
0	0	1
1	0	2
2	0	3
3	1	2
4	1	3
5	2	3

 

⑻ 행렬 연산 

① NumPy로 정의된 행렬에서 * 및 ** 연산은 각 원소를 곱하는 것에 불과함 : 이 경우 @ 연산자를 써서 행렬의 곱셈임을 표시함

② sympy,Matrix로 정의된 행렬에서 * 및 ** 연산은 행렬의 곱셈 및 제곱을 의미함 

브로드캐스팅(broadcasting) 

① NumPy에서 차원이 맞지 않는 배열 간의 연산을 가능하게 해주는 기능

② 작은 배열(단, 차원이 1일 것)이 자동으로 확장되어 큰 배열과 같은 형태로 맞춰진 후 연산이 수행

③ 작은 배열을 큰 배열에 맞추기 위해 데이터를 물리적으로 복사하는 것은 아님 

 

# Shape of `exp_log_mu`: (2257, 6)
# Shape of `theta_mn`: (6, 13344)

exp_log_mu_expanded = exp_log_mu[:, :, np.newaxis]   # Shape: (2257, 6, 1)
theta_mn_expanded = theta_mn[np.newaxis, :, :]       # Shape: (1, 6, 13344)    
result = exp_log_mu_expanded * theta_mn_expanded     # Shape: (2257, 6, 13344)

 

입력: 2024.04.30 13:41