欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

NumPy.npy與pandas DataFrame的實(shí)例講解

 更新時(shí)間:2018年07月09日 09:50:21   作者:qq_24683561  
今天小編就為大家分享一篇NumPy.npy與pandas DataFrame的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

用CSV格式來(lái)保存文件是個(gè)不錯(cuò)的主意,因?yàn)榇蟛糠殖绦蛟O(shè)計(jì)語(yǔ)言和應(yīng)用程序都能處理這種格式,所以交流起來(lái)非常方便。然而這種格式的存儲(chǔ)效率不是很高,原因是CSV及其他純文本格式中含有大量空白符;而后來(lái)發(fā)明的一些文件格式,如zip、bzip和gzip等,壓縮率則有了顯著提升。

首先導(dǎo)入模塊:

In [1]: import numpy as np
 
In [2]: import pandas as pd
 
In [3]: from tempfile import NamedTemporaryFile
 
In [4]: from os.path import getsize

這里我們將使用Python標(biāo)準(zhǔn)的NamedTemporaryFile來(lái)存儲(chǔ)數(shù)據(jù),這些臨時(shí)文件隨后會(huì)自動(dòng)刪除。

接下來(lái)獲取CSV文件格式的大?。?/strong>

In [5]: np.random.seed(42)
 
In [6]: a = np.random.randn(365,4)
 
In [7]: tmpf = NamedTemporaryFile()
 
In [8]: np.savetxt(tmpf,a,delimiter=',')
 
In [9]: print("Size CSV file",getsize(tmpf.name))
Size CSV file 36693

下面首先以NumPy.npy格式來(lái)保存該數(shù)組,隨后載入內(nèi)存,并檢查數(shù)組的形狀以及.npy文件的大?。?/strong>

In [10]: tmpf = NamedTemporaryFile()
 
In [11]: np.save(tmpf,a)
 
In [12]: tmpf.seek(0)
Out[12]: 0
 
In [13]: loaded = np.load(tmpf)
 
In [14]: print("Shape",loaded.shape)
Shape (365, 4)
 
In [15]: print("Size .npy file",getsize(tmpf.name))
Size .npy file 11760

.npy文件的大小只有CSV文件的三分之一左右。實(shí)際上,利用Python可以存儲(chǔ)任意復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。也可以序列化格式來(lái)存儲(chǔ)pandas的DataFrame或者Series數(shù)據(jù)結(jié)構(gòu)

在Python中,pickle是將Python對(duì)象存儲(chǔ)到磁盤(pán)或其他介質(zhì)時(shí)采用的一種格式,這個(gè)格式化的過(guò)程叫做序列化。之后,我們可以從存儲(chǔ)器中重建該P(yáng)ython對(duì)象,這個(gè)逆過(guò)程稱(chēng)為反序列化。并非所有的Python對(duì)象都能夠序列化;不過(guò)借助諸如dill之列的模塊,可以將更多種類(lèi)的Python對(duì)象序列化。

首先用前面生成的NumPy數(shù)組創(chuàng)建一個(gè)DataFame,接著用to_pickle()方法將其寫(xiě)入一個(gè)pickle對(duì)象中,然后用read_pickle()函數(shù)從這個(gè)pickle對(duì)象中檢索該DataFrame:

In [16]: tmpf.name
Out[16]: '/tmp/tmpyy06safp'
 
In [17]: df = pd.DataFrame(a)
 
In [18]: df.to_pickle(tmpf.name) 是將DataFrame()寫(xiě)入到/tmp/tmpyy06safp中
 
In [19]: print("Size pickled dataframes",getsize(tmpf.name))
Size pickled dataframes 12250
 
In [20]: tmpf.name
Out[20]: '/tmp/tmpyy06safp'
 
In [21]: print("DF from pickle\n",pd.read_pickle(tmpf.name))
DF from pickle
    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 -0.463418 -0.465730
3 0.241962 -1.913280 -1.724918 -0.562288
4 -1.012831 0.314247 -0.908024 -1.412304
5 1.465649 -0.225776 0.067528 -1.424748
6 -0.544383 0.110923 -1.150994 0.375698
7 -0.600639 -0.291694 -0.601707 1.852278
8 -0.013497 -1.057711 0.822545 -1.220844
9 0.208864 -1.959670 -1.328186 0.196861
10 0.738467 0.171368 -0.115648 -0.301104
11 -1.478522 -0.719844 -0.460639 1.057122
12 0.343618 -1.763040 0.324084 -0.385082
13 -0.676922 0.611676 1.031000 0.931280
14 -0.839218 -0.309212 0.331263 0.975545
15 -0.479174 -0.185659 -1.106335 -1.196207
16 0.812526 1.356240 -0.072010 1.003533
17 0.361636 -0.645120 0.361396 1.538037
18 -0.035826 1.564644 -2.619745 0.821903
19 0.087047 -0.299007 0.091761 -1.987569
20 -0.219672 0.357113 1.477894 -0.518270
21 -0.808494 -0.501757 0.915402 0.328751
22 -0.529760 0.513267 0.097078 0.968645
23 -0.702053 -0.327662 -0.392108 -1.463515
24 0.296120 0.261055 0.005113 -0.234587
25 -1.415371 -0.420645 -0.342715 -0.802277
26 -0.161286 0.404051 1.886186 0.174578
27 0.257550 -0.074446 -1.918771 -0.026514
28 0.060230 2.463242 -0.192361 0.301547
29 -0.034712 -1.168678 1.142823 0.751933
..  ...  ...  ...  ...
335 0.160574 0.003046 0.436938 1.190646
336 0.949554 -1.484898 -2.553921 0.934320
337 -1.366879 -0.224765 -1.170113 -1.801980
338 0.541463 0.759155 -0.576510 -2.591042
339 -0.546244 0.391804 -1.478912 0.183360
340 -0.015310 0.579291 0.119580 -0.973069
341 1.196572 -0.158530 -0.027305 -0.933268
342 -0.443282 -0.884803 -0.172946 1.711708
343 -1.371901 -1.613561 1.471170 -0.209324
344 -0.669073 1.039905 -0.605616 1.826010
345 0.677926 -0.487911 2.157308 -0.605715
346 0.742095 0.299293 1.301741 1.561511
347 0.032004 -0.753418 0.459972 -0.677715
348 2.013387 0.136535 -0.365322 0.184680
349 -1.347126 -0.971614 1.200414 -0.656894
350 -1.046911 0.536653 1.185704 0.718953
351 0.996048 -0.756795 -1.421811 1.501334
352 -0.322680 -0.250833 1.328194 0.556230
353 0.455888 2.165002 -0.643518 0.927840
354 0.057013 0.268592 1.528468 0.507836
355 0.538296 1.072507 -0.364953 -0.839210
356 -1.044809 -1.966357 2.056207 -1.103208
357 -0.221254 -0.276813 0.307407 0.815737
358 0.860473 -0.583077 -0.167122 0.282580
359 -0.248691 1.607346 0.490975 0.734878
360 0.662881 1.173474 0.181022 -1.296832
361 0.399688 -0.651357 -0.528617 0.586364
362 1.238283 0.021272 0.308833 1.702215
363 0.240753 2.601683 0.565510 -1.760763
364 0.753342 0.381158 1.289753 0.673181
 
[365 rows x 4 columns]

以上這篇NumPy.npy與pandas DataFrame的實(shí)例講解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python曲線擬合多項(xiàng)式深入詳解

    Python曲線擬合多項(xiàng)式深入詳解

    這篇文章主要給大家介紹了關(guān)于Python使用scipy進(jìn)行曲線擬合的相關(guān)資料,Scipy優(yōu)化和擬合采用的是optimize模塊,該模塊提供了函數(shù)最小值(標(biāo)量或多維)、曲線擬合和尋找等式的根的有用算法,需要的朋友可以參考下
    2022-11-11
  • python數(shù)學(xué)模塊(math/decimal模塊)

    python數(shù)學(xué)模塊(math/decimal模塊)

    這篇文章主要介紹了python數(shù)學(xué)模塊(math/decimal模塊),文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • tensorflow中tf.slice和tf.gather切片函數(shù)的使用

    tensorflow中tf.slice和tf.gather切片函數(shù)的使用

    今天小編就為大家分享一篇tensorflow中tf.slice和tf.gather切片函數(shù)的使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-01-01
  • pycharm找不到解釋器問(wèn)題的解決方案

    pycharm找不到解釋器問(wèn)題的解決方案

    安裝好PyCharm之后,新建或者導(dǎo)入項(xiàng)目碰到找不到解釋器的情況,不用擔(dān)心,追根到底,咱們就是需要找到pycharm*.exe的文件,那么這個(gè)文件在哪里呢?所以本文就給大家介紹一下pycharm找不到解釋器問(wèn)題的解決方案,需要的朋友可以參考下
    2024-04-04
  • Python之urlencode和urldecode案例講解

    Python之urlencode和urldecode案例講解

    這篇文章主要介紹了Python之urlencode和urldecode案例講解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • python中join()方法介紹

    python中join()方法介紹

    Python join() 方法用于將序列中的元素以指定的字符連接生成一個(gè)新的字符串。這篇文章主要介紹了python中join()方法,需要的朋友可以參考下
    2018-10-10
  • 使用Python繪制臺(tái)風(fēng)軌跡圖的示例代碼

    使用Python繪制臺(tái)風(fēng)軌跡圖的示例代碼

    這篇文章主要介紹了使用Python繪制臺(tái)風(fēng)軌跡圖的示例代碼,幫助大家更好的理解和使用python繪制圖形,感興趣的朋友可以了解下
    2020-09-09
  • xpath無(wú)法定位tbody標(biāo)簽解決方法示例

    xpath無(wú)法定位tbody標(biāo)簽解決方法示例

    這篇文章主要介紹了xpath無(wú)法定位tbody標(biāo)簽解決方法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • Python實(shí)戰(zhàn)之實(shí)現(xiàn)百度智能圖片識(shí)別

    Python實(shí)戰(zhàn)之實(shí)現(xiàn)百度智能圖片識(shí)別

    這篇文章主要介紹了如何利用Python編寫(xiě)一個(gè)百度智能圖片識(shí)別項(xiàng)目,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定幫助,需要的可以參考一下
    2022-01-01
  • python腳本后臺(tái)執(zhí)行方式

    python腳本后臺(tái)執(zhí)行方式

    今天小編就為大家分享一篇python腳本后臺(tái)執(zhí)行方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-12-12

最新評(píng)論