반응형

https://wikidocs.net/14606

 

3.1 ndarray

### 개념과 생성 NumPy와 패키지의 핵심은 `ndarray` 객체이다. * `ndarray`는 fixed-size homogeneous multidimensional …

wikidocs.net

3.1 ndarray

개념과 생성

NumPy와 패키지의 핵심은 ndarray 객체이다.

  • ndarray는 fixed-size homogeneous multidimensional array 정도로 이해할 수 있으며, 기본적으로 vectorization과 broadcasting을 지원한다.
  • Python에서 제공하는 list, tuple 등의 시퀀스 자료형은 서로 다른 데이터타입을 저장할 수 있고(heterogeneous sequence), 크기가 자동으로 커질 수 있다. 반면에 ndarray는 성능향상을 위해 같은 데이터타입만을 요소로 가질 수 있고, 크기 역시 고정되어 있다. 만약 크기를 변경하면 새로 메모리에 할당되고 이전 값은 삭제된다.
# https://wikidocs.net/14606
import numpy as np

print("x는 float64를 요소타입으로 갖는 크기 3의 1차원 배열이다.")
x = np.array((0.1,0.2,0.3))
print(x)
print(x.shape)  # 차원 : 1자원 배열의 shape는 (m,)
print(x.dtype) # 요소 타입 : float64

print("y는 int32를 요소 타입으로 하는 (2,3) 크기의 2차원 배열이다.")
y = np.array(((1,2,3),(4,5,6)))
print(y)
print(y.shape)  # 차원 : 2자원 배열의 shape는 (m,n)  3차원은 (p,q,r)
print(y.dtype) # 요소 타입 : int32

print("생성시 입력된 값을 통해 dtype을 추천하는데, 강제로 지정하는 것은 다음과 같다.")
z = np.array([1,2,3],dtype='float64')
print(z)
print(z.shape)
print(z.dtype)

"""_summary_
ndarray의 중요 속성을 정리하면 다음과 같다.

shape : 배열의 형태
dtype : 요소의 데이터 타입, int32, float32 등등
ndim : 차원수. x.ndim = 1, y.ndim=2 등이며 len(x.shape) 와 동일
size : 요소의 개수. shape의 모든 값의 곱. x.size = 3, y.size=6 등
itemsize : 요소 데이터 타입의 크기(byte 단위), x.itemsize=8 등
data : 실제 데이터. 직접 사용자가 접근할 필요는 없음
"""

print("초기화 관련 편의함수")
Y = np.zeros((3,3))
print(Y)
Y = np.ones((3,3),dtype='int32')
Z = np.empty((3,3))

print("\n미리 크기지정없이 순차적으로 만들때, 크기 0인 배열을 생성하고 append()를 수행")
A = np.array([])
for i in range(3):
    A = np.append(A,[1,2,3])

print(A)

print("단순한 시퀀스는 range() 함수의 실수버전인 arange(from,to,step)이나 \nlinspace(from,to,npoints)를 사용하면 편리하다. \n또한 단위행렬을 위한 eye(n) 함수를 제공한다.")
print(np.arange(1,2,0.1))
#array([ 1. ,  1.1,  1.2,  1.3,  1.4,  1.5,  1.6,  1.7,  1.8,  1.9])
print(np.arange(10))   # start, step 생략가능. 정수로 생성
#array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
print(np.arange(10.))  # start, step 생략가능. 실수로 생성
#array([ 0.,  1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9.])
print(np.linspace(0.,20.,11))
#array([  0.,   2.,   4., ...,  16.,  18.,  20.])
print(np.eye(3))
#array([[ 1.,  0.,  0.],
#       [ 0.,  1.,  0.],
#       [ 0.,  0.,  1.]])

print("\n\nshape과 dtype 변경")
msg = "ndarray는 고정된 크기를 유지하면서 shape을 변경할 수 있다. 예를 들어 크기 9의 1차원 배열을 3*3 2차원 배열로 바꿀 수 있다. \n이때 사용하는 함수는 reshape() 인데 함수 또는 메쏘드 형태로 제공한다."
print(msg)

X = np.arange(0,9,1.)
print(X)
Y = np.reshape(X,(3,3)) # 또는 Y=X.reshape((3,3))
print(Y)

#만약 자기 자신을 대상을 변경하면 shape 속성을 강제로 변경하면 된다.
X.shape = (3,3)
print(X)

print("astype() 메쏘드를 사용하면 배열에서 dtype을 바꿀 수 있다.")

a = np.arange(3);
a.astype(int)  # a.astype('int34') 와 동일
a.astype('int34') 
a.astype('int64')
a.astype(float)    # a.astype('float64')
a.astype('float32')
a.astype('float64')
print(a)
반응형
반응형


error : Cannot interpret '<attribute 'dtype' of 'numpy.generic' objects>' as a data type 

 

    발생하면  pandas를 업그레이드 하라. 

 

pip install numpy --upgrade
pip install pandas --upgrade
반응형
반응형

pip install matplotlib

matplotlib 3.7.2

https://pypi.org/project/matplotlib/

 

matplotlib

Python plotting package

pypi.org

Matplotlib is a comprehensive library for creating static, animated, and interactive visualizations in Python.

Check out our home page for more information.

Matplotlib produces publication-quality figures in a variety of hardcopy formats and interactive environments across platforms. Matplotlib can be used in Python scripts, Python/IPython shells, web application servers, and various graphical user interface toolkits.

Install

See the install documentation, which is generated from /doc/users/installing/index.rst

Contribute

You've discovered a bug or something else you want to change - excellent!

You've worked out a way to fix it -- even better!

You want to tell us about it -- best of all!

Start at the contributing guide!

반응형
반응형

점프 투 파이썬

https://wikidocs.net/book/1

 

점프 투 파이썬

이 책은 파이썬이란 언어를 처음 접해보는 독자들과 프로그래밍을 한 번도 해 본적이 없는 사람들을 대상으로 한다. 프로그래밍을 할 때 사용되는 전문적인 용어들을 알기 쉽게 풀어서 …

wikidocs.net

반응형
반응형

https://sdc-james.gitbook.io/onebook/

 

한곳에서 끝내는 파이썬 & 머신러닝 & 딥러닝 - OneBook(Python & Deep Learning)

이 문서는 초보자들이 쉽게 딥러닝 및 파이썬을 공부하기 위해 만든 문서 입니다. 제가 이 공부를 체계없이 시작하여 많은 오류를 범하였고, 또한 이곳 저곳을 돌아다니며 여러 자료들을 참고

sdc-james.gitbook.io

이 문서는 초보자들이 쉽게 딥러닝 및 파이썬을 공부하기 위해 만든 문서 입니다. 제가 이 공부를 체계없이 시작하여 많은 오류를 범하였고, 또한 이곳 저곳을 돌아다니며 여러 자료들을 참고 하느라 많은 시간이 걸려서 다른 분들은 한곳에서 쉽게 접근 할 수 있도록 제 나름대로 체계를 잡은 것입니다.
제 지식이 미천하여 많은 내용 오류가 있습니다. 오류에 대한 지적은 권경혁( onebook2james@gmail.com )로 이메일을 주시면 성실히 답하겠습니다. 또한 여러 싸이트에서 발췌한 자료가 많이 있습니다만 제가 정리하면서 원본 인용 표기가 누락된 곳도 있을 것이니 양해해 주시기 바랍니다.
 
계속 읽으시려면 아래 → 화살표를 누르시면 됩니다.
 
이 문서는 GitBookGitHub 에서 읽을 수 있습니다.
반응형

'프로그래밍 > Python' 카테고리의 다른 글

[python] matplotlib - pip install matplotlib  (0) 2023.07.09
[python] 점프 투 파이썬 book  (0) 2023.07.07
[python] iPad에서 파이썬 하기  (0) 2023.07.04
[python] pandas get started  (0) 2023.06.11
[python] simple-colors  (0) 2023.06.09
반응형

[python] iPad에서 파이썬 하기

https://apps.apple.com/kr/app/carnets-jupyter/id1450994949

 

‎Carnets - Jupyter

‎Jupyter notebooks are a powerful tool used in education and research. You can write small snippets of Python code and observe the result on screen, combine with paragraphs of text, using Markdown. Carnets provides a complete, stand-alone, implementation

apps.apple.com

Jupyter 노트북은 교육 및 연구에 사용되는 강력한 도구입니다. Python 코드의 작은 스니펫을 작성하고 Markdown을 사용하여 화면에서 결과를 관찰하고 텍스트 단락과 결합할 수 있습니다.

Carnets는 Jupyter 노트북의 완전한 독립 실행형 구현을 제공합니다. 임베디드 Python 인터프리터를 사용하여 모든 것이 장치에서 실행됩니다. 인터넷 연결이 필요하지 않습니다. 설정을 사용하여 Jupyter 노트북과 고급 Jupyterlab 중에서 선택할 수 있습니다.

 

Numpy, Sympy, Matplotlib, Pandas, lxml, bokeh, nbextensions(ipywidgets 포함) 및 기타 여러 패키지가 사전 설치되어 있습니다. 설치된 패키지의 전체 목록을 보려면 코드 창에 "%pip list"를 입력하십시오. "%pip install packageName"을 사용하여 더 많은 패키지를 추가할 수 있지만 순수 Python인 경우에만 가능합니다.

 

scipy, seaborn 또는 scikit-learn이 필요한 경우 다른 앱인 "Carnets - Jupyter(with scipy)"를 사용하십시오.

 

다른 앱과 노트북을 공유하고 다른 앱에서 관리하는 노트북이나 디렉토리를 열 수도 있습니다.

 

설치된 패키지의 일부 목록: astropy, babel, bokeh, cryptography, cvxopt, Fiona, geopandas, geopy, lxml, matplotlib, numpy, openCV, pandas, pillow, pyFFTW, pyproj, rasterio, regex, shapely, sympy, wordcloud.

 

 

https://apps.apple.com/kr/app/pythonista-3/id1085978097

 

‎Pythonista 3

‎Pythonista is a complete scripting environment for Python 3.10, running right on your iPad or iPhone, so you can develop and run Python scripts on the go. Like Python itself, "batteries are included" – from popular third-party modules like requests, n

apps.apple.com

Pythonista는 iPad 또는 iPhone에서 바로 실행되는 Python 3.10을 위한 완벽한 스크립팅 환경이므로 이동 중에도 Python 스크립트를 개발하고 실행할 수 있습니다.

Python 자체와 마찬가지로 요청, numpy, matplotlib, pandas(및 기타)와 같은 인기 있는 타사 모듈에서 iOS용으로 맞춤 제작된 모듈에 이르기까지 "배터리가 포함되어 있습니다". Pythonista를 사용하면 스크립트에서 센서/위치 데이터, 사진 라이브러리, 연락처, 미리 알림, 클립보드 등에 액세스할 수 있으므로 Python과 iOS의 잠재력을 최대한 활용할 수 있습니다.

 

Pythonista는 사용자 친화적인 인터페이스로 설계되어 기술 수준에 관계없이 누구나 쉽게 코딩을 시작할 수 있습니다. 전체 Python 설명서는 앱에서 오프라인으로 읽을 수도 있습니다.

 

Pythonista는 Python을 배우고 연습하기 위한 것일 뿐만 아니라 여러 앱 확장으로 iOS를 자동화하는 강력한 도구이기도 합니다. 거의 모든 앱의 공유 시트 또는 사용자 지정 시스템 키보드에서 직접 스크립트를 호출하고 스크립트를 Shortcuts 및 Siri와 통합할 수 있습니다. Pythonista를 사용하면 다른 앱 간에 전환할 필요 없이 필요할 때마다 스크립트를 쉽게 실행할 수 있습니다.

 

특징:

 

> 구문 강조 표시, 코드 완성 및 스크립팅 지원 기능이 있는 강력한 코드 편집기

 

> 코드 완성, 명령 기록 및 이미지 표시 지원이 포함된 대화형 프롬프트

 

> 통합 시각적 디버거 및 개체 검사기

 

> 편집기에서 직접 빠르게 조회하여 오프라인 문서 작성 완료

 

> 다양하고 아름다운 명암 테마와 나만의 테마 편집기

 

> 빠른 프로토타이핑을 위한 UI 편집기

 

> 통합 PEP 8 스타일 검사기 및 코드 포맷터

 

> 대부분의 Python 표준 라이브러리와 그래픽, 사운드 및 iOS 통합을 위한 추가 모듈(예: 클립보드, 연락처, 미리 알림, 사진, UI...)을 지원합니다.

 

> 요청, numpy, matplotlib, pandas, Pillow...와 같은 많은 인기 있는 타사 모듈 포함

 

> 포함된 많은 예제

 

> iPad 및 iPhone용 범용 앱

 

> 거의 모든 앱에서 스크립트를 실행할 수 있는 공유 시트 확장

 

> 텍스트를 편집하는 모든 앱에서 Python을 사용하기 위한 스크립팅 가능한 시스템 전체 키보드

 

> 바로 가기 앱과의 고급 통합으로 Python 스크립트를 바로 가기 및 개인 자동화 작업으로 사용할 수 있습니다.

 

Pythonista는 컴파일된 언어(C/C++)로 작성된 추가 모듈을 설치하거나 다운로드할 수 있도록 설계되지 않았습니다. 널리 사용되는 많은 네이티브 라이브러리가 포함되어 있고 기본적으로 작동하지만 일반적으로 C/C++ 종속성이 있는 추가 모듈을 설치할 수 없습니다.

 

"Pythonista"라는 이름은 Python Software Foundation의 승인을 받아 사용됩니다.

반응형
반응형

Pandas Tutorial

https://www.w3schools.com/python/pandas/default.asp

 

Pandas Tutorial

W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.

www.w3schools.com

Pandas is a Python library.

Pandas is used to analyze data.

 

https://pypi.org/project/pandas/

pip install pandas

 

 

pandas

Powerful data structures for data analysis, time series, and statistics

pypi.org

 

Pandas   http://bigdata.dongguk.ac.kr/lectures/Python/_book/pandas.html#pandas-dataframe

  • 데이터 처리와 분석을 위한 라이브러리
  • 행과 열로 이루어진 데이터 객체를 만들어 다룰 수 있음
  • 대용량의 데이터들을 처리하는데 매우 편리
  • pandas 자료구조
    • Series: 1차원
    • DataFrame: 2차원
    • Panel: 3차원
  • pandas 로딩
    • import numpy as np # 보통 numpy와 함께 import
    • import pandas as pd
""" Pandas Tutorial
https://www.w3schools.com/python/pandas/default.asp

Pandas is a Python library.
Pandas is used to analyze data.
"""

#import pandas
import pandas as pd #Now the Pandas package can be referred to as pd instead of pandas.


mydataset = {
  'cars': ["BMW", "Volvo", "Ford"],
  'passings': [3, 7, 2]
}

myvar = pd.DataFrame(mydataset)

print(myvar)


import pandas as pd
print(pd.__version__)
반응형
반응형

simple-colors 

https://pypi.org/project/simple-colors/

 

simple-colors

Colorful output in terminal

pypi.org

 

#Colored Output in Python
import simple_colors
text = "Welcome to Python"

# Colored text
colored = simple_colors.blue(text)
print('Colored:', colored)

# Colored and Bold text
bold_colored = simple_colors.green(text,'bold')
print('BOLD:', bold_colored)

# Colored, Bold and Underlined text
attributes = ['bold','underlined']
bold_underlined = simple_colors.red(text, attributes)
print('BOLD and Underlined: ', bold_underlined)

Project description

Simple Colors

Colorful output in terminal.

Installation

pip install simple-colors

Usage

from simple_colors import *

print(green('hello'))
print(green('hello', 'bold'))
print(green('hello', ['bold', 'underlined']))

Inlucded colors

  • black
  • red
  • green
  • yellow
  • blue
  • magenta
  • cyan

Included styles:

  • bold
  • bright
  • dim
  • italic
  • underlined
  • blink
  • reverse
반응형

+ Recent posts