Python을 사용하여 MATLAB을 대체합니다 : 데이터 가져 오기 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/1057666

  •  21-08-2019
  •  | 
  •  

문제

Matlab을 대체하기 위해 일부 파이썬 라이브러리를 사용하고 싶습니다. Python에서 Excel 데이터를 어떻게 가져올 수 있습니까 (예 : 사용 Numpy) 사용하려면?

Python이 Matlab의 신뢰할 수있는 대안인지는 모르겠지만 시도하고 싶습니다. AA 튜토리얼이 있습니까?

도움이 되었습니까?

해결책

어떤 종류의 계산을하고 있는지에 따라 MATLAB (그리고 당신이 사용하는 툴박스에서), Python은 matlab의 좋은 대안이 될 수 있습니다.

파이썬 + Numpy + Scipy + matplotlib 시작하기에 적합한 조합입니다.

데이터의 경우 예를 들어 데이터를 텍스트 파일로 직접 저장하고 (부동 소수점 정밀 문제로 직접 걱정하지 않는다고 가정)를 읽을 수 있습니다. 파이썬.

데이터가있는 경우 뛰어나다 각 값이 ";"로 분리되는 데이터, 예를 들어 파일을 한 줄씩 읽고 split () 메소드 (with ";"As Arth)를 사용하여 각 값을 얻을 수 있습니다.

버전 7.1까지 Matlab의 경우 Python에서 .mat 파일을 직접로드 할 수 있습니다. scipy.io.matlab.mio 기준 치수.

다른 팁

거기 있습니다 matplotlib 음모와 CSV 모듈 독서를 위해 뛰어나다 데이터 (덤프 할 수 있다고 가정합니다 CSV).

여기에 있습니다 튜토리얼 교체에 대해 MATLAB 파이썬으로.

당신이에서 온다면 MATLAB 세계, 파일 라브 당신의 전환이 완화 될 것입니다. 데이터를 ASCII로 변환 한 후 pylab.load() 나머지는 다음을 수행합니다.

pylab.load(fname, comments='#', delimiter=None, converters=None, 
           skiprows=0, usecols=None, unpack=False, 
           dtype=<type 'numpy.float64'>)

텍스트 데이터를 Python으로 가져올 수있는 수백 가지 방법이있을 것입니다.

그러나 교체하고 싶기 때문에 MATLAB, 당신은 사용하고 있습니다 Numpy 그리고 아마도 Scipy.

간단하게 유지 : Numpy의 표준 텍스트 로딩 사용 :

import numpy
imported_array = numpy.loadtxt('file.txt',delimiter='\t')  # Assuming tab-delimiter
print imported_array.shape

Pandas는 Excel에서 매우 쉽게 가져 오거나 내보낼 수있는 Python Data Analysis 라이브러리입니다. 다음은 다음과 같은 방법입니다.

http://pandas.pydata.org/pandas-docs/stable/10min.html#excel

단기 특강:

import pandas as pd
data = pd.read_excel('foo.xlsx', 'Sheet1', index_col=None, na_values=['NA'])

나는 보았다 mlabwrap 일부를 완화하기위한 단계로 MATLAB Python을 더 많이 사용하는 개발자.

그러나 나는 그것을 깨끗하게 만들 수 없었고, 여기에서 생산 설치를 실행하지 않기 때문에 물에서 죽었습니다.

데이터를 저장 한 경우 MATLAB 형식, 사용 :

from scipy.io import loadmat

datafile = "yourfile.mat"
data = loadmat(datafile, matlab_compatible=True)
var1 = data['nameOfYourVariable'].squeeze()
var2 = data['nameOfYourOtherVariable'].squeeze()

"Python이 Matlab에 대한 믿을만한 대안인지 모르겠습니다."

나를 위해 (실험 물리학) 파이썬은 완전한 대체품 일뿐입니다. MATLAB (포함시 Scipy 그리고 matplotlib 위에서 언급했듯이), 그러나 데이터 크런치 및 시각화 이외의 많은 것들에 유용합니다 (일반적인 프로그래밍 요구).

"세이지를 시도 할거야."

몇 개의 서버가 실행되고 있다는 점에 주목할 가치가 있습니다. 세이지 노트북 EnvironMet을 제공합니다 (확인 Sage Online을 사용해보십시오 안에 http://www.sagemath.org/). 필요한 모든 것이 인터넷 브라우저와 액세스 (설치 필요 없음)라는 사실을 감안할 때 이것은 매우 깔끔합니다.

Kevin Buchs (또 다른 답변에서)에 의해 해석 된 질문에 관해서는, Python에 대한 독점 엑셀을 읽는 것은 여러 가지 방법으로 수행 될 수 있으며 일부는 플랫폼 (OS)입니다.

  1. 멋진 리소스 (플랫폼 독립) - http://www.python-excel.org/
  2. 사용 예 xlrd 한 번은 유용한 것을 발견했습니다 (이것은 내가 필요할 때 내가 사용한 것입니다) : http://code.activestate.com/recipes/483742/ XLRD (플랫폼 독립)를 기반으로 한 예제
  3. pyexcelerator 또 다른 옵션입니다.

이게 도움이 되길 바란다. 그렇지 않다면, 나는 몇 가지 예제 코드를 직접 배열하려고 노력할 수 있습니다 (내가 가진 것들은 6 세 이상이지만 ...). 나는 다른 답변에서 제안한 것처럼 CSV 또는 ASCII 형식을 사용하는 것을 개인적으로 선호합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top