>  기사  >  백엔드 개발  >  파이썬 numpy 라이브러리

파이썬 numpy 라이브러리

巴扎黑
巴扎黑원래의
2017-06-23 15:32:272319검색

python-numpy

csv 파일 쓰기 및 액세스

csv 파일 쓰기

CSV(Comma-Separated Value, 쉼표로 구분된 값)는 배치 데이터를 저장하는 데 사용되는 일반적인 파일 형식입니다.

csv 파일 쓰기

np.savetxt(frame, array, fmt='%.18e', delimiter=None)
• frame : 文件、字符串或产生器,可以是.gz或.bz2的压缩文件
• array : 存入文件的数组
• fmt : 写入文件的格式,例如:%d %.2f %.18e
• delimiter : 分割字符串,默认是任何空格

예:

>>> a = np.arange(100).reshape(5,20)>>> np.savetxt('a.csv',a,fmt='%d',delimiter=',')

얻은 파일은 다음과 같습니다

0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19
20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39
40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59
60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79
80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99

매개변수를 변경하고 부동 소수점 숫자로 씁니다

>>> a = np.arange(100).reshape(5,20)>>> np.savetxt('a.csv',a,fmt='%.1f',delimiter=',')
0.0,1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0,10.0,11.0,12.0,13.0,14.0,15.0,16.0,17.0,18.0,19.0
20.0,21.0,22.0,23.0,24.0,25.0,26.0,27.0,28.0,29.0,30.0,31.0,32.0,33.0,34.0,35.0,36.0,37.0,38.0,39.0
40.0,41.0,42.0,43.0,44.0,45.0,46.0,47.0,48.0,49.0,50.0,51.0,52.0,53.0,54.0,55.0,56.0,57.0,58.0,59.0
60.0,61.0,62.0,63.0,64.0,65.0,66.0,67.0,68.0,69.0,70.0,71.0,72.0,73.0,74.0,75.0,76.0,77.0,78.0,79.0
80.0,81.0,82.0,83.0,84.0,85.0,86.0,87.0,88.0,89.0,90.0,91.0,92.0,93.0,94.0,95.0,96.0,97.0,98.0,99.0

csv 파일 읽기

csv 파일 읽기

rrre 에

예:

np.loadtxt(frame, dtype=np.float, delimiter=None, unpack=False)
• frame : 文件、字符串或产生器,可以是.gz或.bz2的压缩文件
• dtype : 数据类型,可选
• delimiter : 分割字符串,默认是任何空格
• unpack : 如果True,读入属性将分别写入不同变量

CSV는 1차원 및 2차원 배열만 효과적으로 저장할 수 있습니다.
np.savetxt() np.loadtxt()는 1차원 및 2차원 배열에만 효과적으로 액세스할 수 있습니다.

다차원 배열에 대한 액세스 data

다차원 데이터 쓰기

>>> b = np.loadtxt('a.csv',delimiter=',')>>> b
array([[  0.,   1.,   2.,   3.,   4.,   5.,   6.,   7.,   8.,   9.,  10.,         11.,  12.,  13.,  14.,  15.,  16.,  17.,  18.,  19.],
       [ 20.,  21.,  22.,  23.,  24.,  25.,  26.,  27.,  28.,  29.,  30.,         31.,  32.,  33.,  34.,  35.,  36.,  37.,  38.,  39.],
       [ 40.,  41.,  42.,  43.,  44.,  45.,  46.,  47.,  48.,  49.,  50.,         51.,  52.,  53.,  54.,  55.,  56.,  57.,  58.,  59.],
       [ 60.,  61.,  62.,  63.,  64.,  65.,  66.,  67.,  68.,  69.,  70.,         71.,  72.,  73.,  74.,  75.,  76.,  77.,  78.,  79.],
       [ 80.,  81.,  82.,  83.,  84.,  85.,  86.,  87.,  88.,  89.,  90.,         91.,  92.,  93.,  94.,  95.,  96.,  97.,  98.,  99.]])>>> b = np.loadtxt('a.csv',dtype=np.int,delimiter=',')>>> b
array([[ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15, 16,17, 18, 19],
       [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,37, 38, 39],
       [40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,57, 58, 59],
       [60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,77, 78, 79],
       [80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,97, 98, 99]])

Example;

a.tofile(frame, sep='', format='%s')
• frame : 文件、字符串
• sep : 数据分割字符串,如果是空串,写入文件为二进制
• format : 写入数据的格式

a.dat 내용:

>>> a = np.arange(100).reshape(5,10,2)>>> a.tofile("a.dat",sep=',',format='%d')

구분자를 지정하지 않으면 바이너리 파일이 생성되어 텍스트 편집기로 읽을 수 없습니다.

다차원 데이터 읽기

0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99

numpy의 난수 함수

NumPy의 난수 하위 라이브러리
np.random.*

입니다. numpy NumPy는 통계 함수 np를 직접 제공합니다.
function description
rand(d0, d1,..,dn ) d0-dn, 부동 소수점 수, [0,1), 균등 분포를 기반으로 하는 난수 배열 생성
randn(d0,d1,...,dn) d0-dn을 기반으로 생성됨 난수 배열, 표준 정규 분포
randint(low[,high,shape]) 모양에 따라 임의의 정수 또는 정수 배열을 생성합니다. 범위는 [낮음, 높음)
seed(s) 난수 시드, s는 주어진 시드 값입니다.
shuffle(a) 은 배열 a의 첫 번째 축에 따라 배열되고 배열 a
permutation(a) 에 따라 배열이 변경됩니다. 배열 a의 첫 번째 축 1축은 배열 a를 변경하지 않고 새로운 무질서한 배열을 생성합니다. 새로운 크기 배열 형성 모양 바꾸기 요소 재사용이 가능한지 여부를 나타냅니다. 기본값은 False입니다
uniform(low,high,size) 균일한 분포, 낮은 시작 값, 높은 끝 값을 갖는 배열을 생성합니다. , 크기는 모양
normal(loc, scale,size) 정규 분포의 배열을 생성하고, loc는 평균, 크기 표준 편차, 크기는 모양
poisson(lam,size) 푸아송 분포를 갖는 배열을 생성하며, lam은 무작위 이벤트의 발생률, 크기는 모양의 통계 함수입니다.
관련 요소의 합을 계산합니다. 주어진 축, 축 정수 또는 튜플을 기반으로 배열 a의


mean(a,axis=None)

주어진 축, 축 정수 또는 튜플을 기반으로 배열 a의 관련 요소에 대한 기대치를 계산합니다. average(a,axis=None,weights=None)주어진 축을 기준으로 배열 a의 관련 요소의 가중 평균을 계산합니다std(a,axis=None)주어진 축을 기준으로 배열 a의 관련 요소의 표준편차를 계산합니다. var(a, axis = None)주어진 축 축에 따라 배열 a의 관련 요소의 분산을 계산합니다.min(a) max (a)배열 계산 argmin(a) argmax(a)아래 첨자를 다음과 같이 줄인 후 배열 a에 있는 요소의 최소값과 최대값을 계산합니다. 1차원unravel_index(index,shape )1차원 첨자 인덱스를 모양에 따라 다차원 첨자로 변환ptp(a)최대값과 최소값의 차이 계산 ​​배열 amedian(a)배열 계산 함수 설명 np.gradient (f) f가 다차원인 경우 각 차원의 그래디언트를 반환합니다.
axis=None에 있는 요소의 중앙값(중앙값)은 통계 함수 의 표준 매개변수입니다. numpy의 그래디언트 함수

그라데이션: 연속 값 사이의 변화율, 즉 XY 좌표축에서 세 개의 연속 X 좌표의 기울기 해당 Y축 값: a, b, c, 여기서 b의 그라데이션은 다음과 같습니다. c-a)/2
np.fromfile(frame, dtype=float, count=‐1, sep='')
• frame : 文件、字符串
• dtype : 读取的数据类型
• count : 读入元素个数,‐1表示读入整个文件
• sep : 数据分割字符串,如果是空串,写入文件为二进制

위 내용은 파이썬 numpy 라이브러리의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.