Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

(시리즈 글이 7개 있습니다.)
개발 환경 구성: 335. Octave의 명령 창에서 실행한 결과를 복사하는 방법
; https://www.sysnet.pe.kr/2/0/11309

개발 환경 구성: 388. Windows 환경에서 Octave 패키지 설치하는 방법
; https://www.sysnet.pe.kr/2/0/11622

개발 환경 구성: 674. WSL 2 환경에서 GNU Octave 설치
; https://www.sysnet.pe.kr/2/0/13319

개발 환경 구성: 675. Windows Octave 8.1.0 - Python 스크립트 연동
; https://www.sysnet.pe.kr/2/0/13320

개발 환경 구성: 676. WSL/Linux Octave - Python 스크립트 연동
; https://www.sysnet.pe.kr/2/0/13321

개발 환경 구성: 677. Octave에서 Excel read/write를 위한 io 패키지 설치
; https://www.sysnet.pe.kr/2/0/13323

.NET Framework: 2108. C# - Octave의 "save -binary ..."로 생성한 바이너리 파일 분석
; https://www.sysnet.pe.kr/2/0/13324




Octave에서 Excel read/write를 위한 io 패키지 설치

기본 상태의 Octave 내에서 xslwrite 또는 xslread 함수를 실행하면 이렇게 오류가 발생합니다.

>> xlswrite('magic.xlsx', magic(4))
error: 'xlswrite' undefined near line 1, column 1

Functions for spreadsheet style I/O (.xls .xlsx .sxc .ods .dbf .wk1
etc.)  are provided in the io package.  See
<https://octave.sourceforge.io/io/>.

Please read <https://www.octave.org/missing.html> to learn how you can
contribute missing functionality.

오류 메시지에 나오지만 io package를 설치하면 된다고 하는데요, 그러고 보니 예전에도 한번 패키지 설치 방법에 대해 소개한 적이 있습니다.

Windows 환경에서 Octave 패키지 설치하는 방법
; https://www.sysnet.pe.kr/2/0/11622

당시 Octave가 4.x 버전이었는데 현재의 8.1.0 버전에서는 별도로 python을 설치하지 않아도 됩니다. 따라서 Octave 명령어 창에서 다음의 명령을 내리면 됩니다.

>> pkg install -forge io
For information about changes from previous versions of the io package, run 'news io'.

그런데, -forge는 현재 유지 보수가 중단됐다고 하며 아래의 사이트에서 업데이트된다고 합니다.

Octave Packages
; https://gnu-octave.github.io/packages/

예를 들어 io 패키지는 "https://gnu-octave.github.io/packages/io/"에 위치하는데요, 그 링크를 방문하면 설치 명령어를 복사할 수 있습니다.

pkg install "https://downloads.sourceforge.net/project/octave/Octave%20Forge%20Packages/Individual%20Package%20Releases/io-2.6.4.tar.gz"

자, 그럼 io 패키지를 로드해 다음과 같이 사용하면 됩니다. ^^

>> pkg load io
>> xlswrite('magic.xlsx', magic(4))
ans = 1




참고로, 다음과 같은 오류가 발생한다면?

>> xlswrite('magic.xslx', magic(4))
warning: xlsopen: no'.xslx' spreadsheet I/O support with available interfaces.

확장자를 잘 확인해 보세요. ^^ xslx가 아니라, xlsx로 해야 합니다.

>> xlswrite('test.xlsx', magic(4))




참고로, 아래는 Octave 8.1.0 윈도우 버전의 기본 패키지 목록입니다. (반면 리눅스의 7.1.0 버전의 경우 기본 패키지가 하나도 없습니다.)

>> pkg list
Package Name         | Version | Installation directory
---------------------+---------+-----------------------
              audio  |   2.0.5 | C:\Octave\8.1.0\mingw64\share\octave\packages\audio-2.0.5
             biosig  |   2.5.0 | C:\Octave\8.1.0\mingw64\share\octave\packages\biosig-2.5.0
            cfitsio  |   0.0.4 | C:\Octave\8.1.0\mingw64\share\octave\packages\cfitsio-0.0.4
     communications  |   1.2.4 | C:\Octave\8.1.0\mingw64\share\octave\packages\communications-1.2.4
            control  |   3.5.0 | C:\Octave\8.1.0\mingw64\share\octave\packages\control-3.5.0
     data-smoothing  |   1.3.0 | C:\Octave\8.1.0\mingw64\share\octave\packages\data-smoothing-1.3.0
           database  |   2.4.4 | C:\Octave\8.1.0\mingw64\share\octave\packages\database-2.4.4
          dataframe  |   1.2.0 | C:\Octave\8.1.0\mingw64\share\octave\packages\dataframe-1.2.0
              dicom  |   0.5.1 | C:\Octave\8.1.0\mingw64\share\octave\packages\dicom-0.5.1
          financial  |   0.5.3 | C:\Octave\8.1.0\mingw64\share\octave\packages\financial-0.5.3
fuzzy-logic-toolkit  |   0.4.6 | C:\Octave\8.1.0\mingw64\share\octave\packages\fuzzy-logic-toolkit-0.4.6
                 ga  |  0.10.3 | C:\Octave\8.1.0\mingw64\share\octave\packages\ga-0.10.3
            general  |   2.1.2 | C:\Octave\8.1.0\mingw64\share\octave\packages\general-2.1.2
      generate_html  |   0.3.3 | C:\Octave\8.1.0\mingw64\share\octave\packages\generate_html-0.3.3
           geometry  |   4.0.0 | C:\Octave\8.1.0\mingw64\share\octave\packages\geometry-4.0.0
                gsl  |   2.1.1 | C:\Octave\8.1.0\mingw64\share\octave\packages\gsl-2.1.1
              image  |  2.14.0 | C:\Octave\8.1.0\mingw64\share\octave\packages\image-2.14.0
 instrument-control  |   0.8.0 | C:\Octave\8.1.0\mingw64\share\octave\packages\instrument-control-0.8.0
           interval  |   3.2.1 | C:\Octave\8.1.0\mingw64\share\octave\packages\interval-3.2.1
     linear-algebra  |   2.2.3 | C:\Octave\8.1.0\mingw64\share\octave\packages\linear-algebra-2.2.3
               lssa  |   0.1.4 | C:\Octave\8.1.0\mingw64\share\octave\packages\lssa-0.1.4
              ltfat  |   2.3.1 | C:\Octave\8.1.0\mingw64\share\octave\packages\ltfat-2.3.1
            mapping  |   1.4.2 | C:\Octave\8.1.0\mingw64\share\octave\packages\mapping-1.4.2
            matgeom  |   1.2.3 | C:\Octave\8.1.0\mingw64\share\octave\packages\matgeom-1.2.3
      miscellaneous  |   1.3.0 | C:\Octave\8.1.0\mingw64\share\octave\packages\miscellaneous-1.3.0
               mqtt  |   0.0.3 | C:\Octave\8.1.0\mingw64\share\octave\packages\mqtt-0.0.3
                nan  |   3.7.0 | C:\Octave\8.1.0\mingw64\share\octave\packages\nan-3.7.0
             netcdf  |  1.0.16 | C:\Octave\8.1.0\mingw64\share\octave\packages\netcdf-1.0.16
              nurbs  |   1.4.3 | C:\Octave\8.1.0\mingw64\share\octave\packages\nurbs-1.4.3
                ocs  |   0.1.5 | C:\Octave\8.1.0\mingw64\share\octave\packages\ocs-0.1.5
            octproj  |   3.0.2 | C:\Octave\8.1.0\mingw64\share\octave\packages\octproj-3.0.2
              optim  |   1.6.2 | C:\Octave\8.1.0\mingw64\share\octave\packages\optim-1.6.2
        optiminterp  |   0.3.7 | C:\Octave\8.1.0\mingw64\share\octave\packages\optiminterp-0.3.7
         quaternion  |   2.4.0 | C:\Octave\8.1.0\mingw64\share\octave\packages\quaternion-2.4.0
           queueing  |   1.2.7 | C:\Octave\8.1.0\mingw64\share\octave\packages\queueing-1.2.7
             signal  |   1.4.3 | C:\Octave\8.1.0\mingw64\share\octave\packages\signal-1.4.3
            sockets  |   1.4.0 | C:\Octave\8.1.0\mingw64\share\octave\packages\sockets-1.4.0
          sparsersb  |   1.0.9 | C:\Octave\8.1.0\mingw64\share\octave\packages\sparsersb-1.0.9
            splines  |   1.3.4 | C:\Octave\8.1.0\mingw64\share\octave\packages\splines-1.3.4
         statistics  |   1.5.4 | C:\Octave\8.1.0\mingw64\share\octave\packages\statistics-1.5.4
                stk  |   2.8.0 | C:\Octave\8.1.0\mingw64\share\octave\packages\stk-2.8.0
            strings  |   1.3.0 | C:\Octave\8.1.0\mingw64\share\octave\packages\strings-1.3.0
             struct  |  1.0.18 | C:\Octave\8.1.0\mingw64\share\octave\packages\struct-1.0.18
           symbolic  |   3.0.1 | C:\Octave\8.1.0\mingw64\share\octave\packages\symbolic-3.0.1
             tisean  |   0.2.3 | C:\Octave\8.1.0\mingw64\share\octave\packages\tisean-0.2.3
                tsa  |   4.6.3 | C:\Octave\8.1.0\mingw64\share\octave\packages\tsa-4.6.3
              video  |   2.0.2 | C:\Octave\8.1.0\mingw64\share\octave\packages\video-2.0.2
            windows  |   1.6.3 | C:\Octave\8.1.0\mingw64\share\octave\packages\windows-1.6.3
             zeromq  |   1.5.5 | C:\Octave\8.1.0\mingw64\share\octave\packages\zeromq-1.5.5




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 4/16/2023]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... [121]  122  123  124  125  126  127  128  129  130  131  132  133  134  135  ...
NoWriterDateCnt.TitleFile(s)
10900정성태2/19/201622208.NET Framework: 548. Linq는 결국 메서드 호출! [3]파일 다운로드1
10899정성태2/17/201623567개발 환경 구성: 282. kernel32.dll, kernel32legacy.dll, api-ms-win-core-sysinfo-l1-2-0.dll [1]
10898정성태2/17/201622043.NET Framework: 547. PerformanceCounter의 InstanceName 지정 시 주의 사항파일 다운로드1
10897정성태2/17/201621314디버깅 기술: 76. windbg 분석 사례 - 닷넷 프로파일러의 GC 콜백 부하
10896정성태2/17/201622401오류 유형: 320. FATAL: 28000: no pg_hba.conf entry for host "fe80::1970:8120:695:a41e%12"
10895정성태2/17/201621294.NET Framework: 546. System.AppDomain으로부터 .NET Profiler의 AppDomainID 구하는 방법 [1]
10894정성태2/17/201622026오류 유형: 319. Visual Studio에서 찾기는 성공하지만 해당 소스 코드 정보가 보이지 않는 경우
10893정성태2/16/201620653.NET Framework: 545. 닷넷 - 특정 클래스가 로드되었는지 여부를 알 수 있을까? - 두 번째 이야기
10892정성태2/16/201621289오류 유형: 318. 탐색기에서 폴더 생성/삭제 시 몇 초 동안 멈추는 현상
10891정성태2/16/201624310VC++: 95. 내 CPU가 MPX/SGX를 지원할까요? [1]
10890정성태2/15/201624103.NET Framework: 544. C# 5의 Caller Info를 .NET 4.5 미만의 응용 프로그램에 적용하는 방법 [5]
10889정성태2/14/201620452.NET Framework: 543. C++의 inline asm 사용을 .NET으로 포팅하는 방법 - 두 번째 이야기파일 다운로드1
10888정성태2/14/201618738.NET Framework: 542. 닷넷 - 특정 클래스가 로드되었는지 여부를 알 수 있을까?
10887정성태2/3/201619466VC++: 94. MPX(Memory Protection Extensions) 테스트파일 다운로드1
10886정성태2/3/201620709개발 환경 구성: 281. Intel MPX Runtime Driver 수동 설치
10885정성태2/2/201620391오류 유형: 317. Sybase.Data.AseClient.AseException: The command has timed out.
10884정성태1/11/201621636개발 환경 구성: 280. 닷넷에서 SAP Adaptive Server Enterprise 데이터베이스 사용파일 다운로드1
10882정성태1/6/201620927Windows: 113. 윈도우의 2179, 26143, 47001 TCP 포트 사용 [1]
10881정성태1/3/201622381오류 유형: 316. 윈도우 10 - 바탕/돋음 체가 사라져 한글이 깨지는 현상 [2]
10880정성태12/16/201520046오류 유형: 315. 닷넷 프로파일러의 오류 코드 정보
10879정성태12/16/201522007오류 유형: 314. Error : DEP0700 : Registration of the app failed. error 0x80070005
10878정성태12/9/201525188디버깅 기술: 75. UWP(유니버설 윈도우 플랫폼) 앱에서 global::System.Diagnostics.Debugger.Break 예외 발생 시 대응 방법
10877정성태12/9/201529543VC++: 93. std::thread 사용 시 R6010 오류 [2]
10876정성태11/26/201525546.NET Framework: 541. SignedXml을 이용한 ds:Signature만드는 방법 [3]파일 다운로드1
10875정성태11/26/201530559개발 환경 구성: 279. signtool.exe의 다중 서명 기능 [2]
10874정성태11/26/201526519개발 환경 구성: 278. 인증서와 인증서를 이용한 코드 사인의 해시 구분
... [121]  122  123  124  125  126  127  128  129  130  131  132  133  134  135  ...