數組存儲成CSV之類的區隔型文件:
下面代碼給隨機數生成器指定種子,并生成一個3*4的NumPy數組
將一個數組元素的值設為NaN:
1
2
3
4
5
6
7
8
|
In [ 26 ]: import numpy as np In [ 27 ]: np.random.seed( 42 ) In [ 28 ]: a = np.random.randn( 3 , 4 ) In [ 29 ]: a[ 2 ][ 2 ] = np.nan In [ 30 ]: print (a) [[ 0.49671415 - 0.1382643 0.64768854 1.52302986 ] [ - 0.23415337 - 0.23413696 1.57921282 0.76743473 ] [ - 0.46947439 0.54256004 nan - 0.46572975 ]] |
NumPy的savetxt()函數是與loadtxt()相對應的一個函數,它能以諸如CSV之類的區隔型文件格式保存數組:
1
|
In [ 31 ]: np.savetxt( 'np.csv' ,a,fmt = '%.2f' ,delimiter = ',' ,header = "#1,#2,#3,#4" ) |
上面的函數調用中,我們規定了用以保存數組的文件的名稱、數組、可選格式、間隔符和一個可選的標題
通過cat np.csv,可以查看剛才所建的np.csv文件的具體內容
利用隨機數組來創建pandas DataFrame:
1
2
3
4
5
6
7
|
In [ 38 ]: df = pd.DataFrame(a) In [ 39 ]: df Out[ 39 ]: 0 1 2 3 0 0.496714 - 0.138264 0.647689 1.523030 1 - 0.234153 - 0.234137 1.579213 0.767435 2 - 0.469474 0.542560 NaN - 0.465730 |
pandas會自動替我們給數據取好列名
利用pandas的to_csv()方法可以為CSV文件生成一個DataFrame:
1
|
In [ 40 ]: df.to_csv( 'pd.csv' ,float_format = '%.2f' ,na_rep = "NAN!" ) |
對于這個方法,我們需要提供文件名、類似于NumPy的savetxt()函數的格式化參數的可選格式串和一個表示NaN的可選字符串
以上這篇使用NumPy和pandas對CSV文件進行寫操作的實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持服務器之家。
原文鏈接:https://blog.csdn.net/qq_24683561/article/details/54565862