免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
Pandas和NumPy的比較

    我們知道Pandas是在NumPy的基礎(chǔ)構(gòu)建而來,因此,熟悉NumPy可以更加有效的幫助我們使用Pandas。

    NumPy主要用C語言編寫,因此,在計(jì)算還和處理一維或多維數(shù)組方面,它要比Python數(shù)組快得多。

    創(chuàng)建數(shù)組

    數(shù)組的主要作用是在一個(gè)變量中存儲(chǔ)多個(gè)值。NumPy可以輕松地處理多維數(shù)組,示例如下:

import numpy as np
arr = np.array([2, 4, 6, 8, 10, 12])
print(type(arr))print ("打印新建數(shù)組: ",end="")#使用for循環(huán)讀取數(shù)據(jù) for l in range (0,5): 
 print (arr[l], end=" ")1234567復(fù)制代碼類型:[python]

    輸出結(jié)果:

<class 'numpy.ndarray'>
打印新建數(shù)組: 2 4 6 8 1012復(fù)制代碼類型:[python]

    雖然Python本身沒有數(shù)組這個(gè)說法,不過Python提供一個(gè)array模塊,用于創(chuàng)建數(shù)字、字符類型的數(shù)組,它能夠容納字符型、整型、浮點(diǎn)型等基本類型。示例如下:

import array#注意此處的 'l' 表示有符號int類型 arr = array.array('l', [2, 4, 6, 8, 10, 12])
print(type(arr))print ("新建數(shù)組: ",end="") 
for i in range (0,5): 
 print (arr[i], end=" ") 1234567復(fù)制代碼類型:[python]

    輸出結(jié)果:

<class 'array.array'>
新建數(shù)組: 2 4 6 8 1012復(fù)制代碼類型:[python]

    布爾索引

    布爾索引是NumPy的重要特性之一,通常與Pandas一起使用。它的主要作用是過濾DataFrame中的數(shù)據(jù),比如布爾值的掩碼操作。

    下面示例展示了如何使用布爾索引訪問DataFrame中的數(shù)據(jù)。

    首先創(chuàng)建一組包含布爾索引的數(shù)據(jù),如下所示:

import pandas as pd 
dict = {'name':["Smith", "William", "Phill", "Parker"],  
  'age': ["28", "39", "34", "36"]}  
info = pd.DataFrame(dict, index = [True, True, False, True])  
print(info)12345復(fù)制代碼類型:[python]

    輸出結(jié)果:

 name ageTrue  Smith  28True   William  39False Phill  34True Parker  3612345復(fù)制代碼類型:[python]

    然后使用.loc訪問索引為True的數(shù)據(jù)。示例如下:

import pandas as pd   
dict = {'name':["Smith", "William", "Phill", "Parker"],  
  'age': ["28", "39", "34", "36"]}  
info = pd.DataFrame(dict, index = [True, True, False, True])#返回所有為 True的數(shù)據(jù)  print(info.loc[True]) 123456復(fù)制代碼類型:[python]

    輸出結(jié)果:

   name ageTrue Smith  28True  William  39True   Parker  361234復(fù)制代碼類型:[python]

    重塑數(shù)組形狀

    在不改變數(shù)組數(shù)據(jù)的情況下,對數(shù)組進(jìn)行變形操作,即改變數(shù)組的維度,比如2*3(兩行三列)的二維數(shù)組變維3*2(三行兩列)的二維數(shù)組。變形操作可以通過reshape()函數(shù)實(shí)現(xiàn)。

    示例如下:

import numpy as np 
arr = np.arange(16) 
print("原數(shù)組: \n", arr) 
arr = np.arange(16).reshape(2, 8) 
print("\n變形后數(shù)組:\n", arr) 
arr = np.arange(16).reshape(8 ,2) 
print("\n變形后數(shù)組:\n", arr)1234567復(fù)制代碼類型:[python]

    輸出結(jié)果:

    原數(shù)組:

[ 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15]

變形后數(shù)組:
[[ 0  1  2  3  4  5  6  7]
[ 8  9 10 11 12 13 14 15]]

變形后數(shù)組:
[[ 0  1]
[ 2  3]
[ 4  5]
[ 6  7]
[ 8  9]
[10 11]
[12 13]
[14 15]]123456789101112131415復(fù)制代碼類型:[python]

    Pdans與NumPy區(qū)別

    Pandas和NumPy被認(rèn)為是科學(xué)計(jì)算與機(jī)器學(xué)習(xí)中必不可少的庫,因?yàn)樗鼈兙哂兄庇^的語法和高性能的矩陣計(jì)算能力。下面對Pandas與NumPy進(jìn)行簡單的總結(jié),如下表所示:  

比較項(xiàng)PandasNumPy
適應(yīng)性Pandas主要用來處理類表格數(shù)據(jù)。NumPy 主要用來處理數(shù)值數(shù)據(jù)。
工具Pandas提供了Series和DataFrame數(shù)據(jù)結(jié)構(gòu)。NumPy 構(gòu)建了 ndarray array來容納數(shù)據(jù)。
性能Pandas對于處理50萬行以上的數(shù)據(jù)更具優(yōu)勢。NumPy 則對于50萬以下或者更少的數(shù)據(jù),性能更佳。
內(nèi)存利用率與 NumPy相比,Pandas會(huì)消耗大量的內(nèi)存。NumPy 會(huì)消耗較少的內(nèi)存。
對象Pandas 提供了 DataFrame 2D數(shù)據(jù)表對象。NumPy 則提供了一個(gè)多維數(shù)組 ndarray 對象

    轉(zhuǎn)換ndarray數(shù)組

    在某些情況下,需要執(zhí)行一些NumPy數(shù)值計(jì)算的高級函數(shù),這個(gè)時(shí)候您可以使用to_numpy()函數(shù),將DataFrame對象轉(zhuǎn)換為NumPyndarray數(shù)組,并將其返回。函數(shù)的語法格式如下:

DataFrame.to_numpy(dtype=None, copy=False)   1復(fù)制代碼類型:[python]

    參數(shù)說明如下:

    dtype:可選參數(shù),表示數(shù)據(jù)類型;

    copy:布爾值參數(shù),默認(rèn)值為Fales,表示返回值不是其他數(shù)組的視圖。

    下面使用示例,了解該函數(shù)的使用方法。示例1:

info = pd.DataFrame({"P": [2, 3], "Q": [4.0, 5.8]})#給info添加R列 info['R'] = pd.date_range('2020-12-23', periods=2)
print(info)#將其轉(zhuǎn)化為numpy數(shù)組 n=info.to_numpy()
print(n)
print(type(n))12345678復(fù)制代碼類型:[python]

    輸出結(jié)果:

[[2 4.0 Timestamp('2020-12-23 00:00:00')]
[3 5.8 Timestamp('2020-12-24 00:00:00')]]12復(fù)制代碼類型:[python]

    可以通過type查看其類型,輸出如下:

numpy.ndarray1復(fù)制代碼類型:[python]

    示例2:

import pandas as pd 
#創(chuàng)建DataFrame對象info = pd.DataFrame([[17, 62, 35],[25, 36, 54],[42, 20, 15],[48, 62, 76]], 
columns=['x', 'y', 'z']) 
print('DataFrame\n----------\n', info) 
#轉(zhuǎn)換DataFrame為數(shù)組arrayarr = info.to_numpy() 
print('\nNumpy Array\n----------\n', arr) 12345678復(fù)制代碼類型:[python]

    輸出結(jié)果:

DataFrame
----------
  x   y   z0  17  62  351  25  36  542  42  20  153  48  62  76Numpy Array
----------
[[17 62 35]
[25 36 54]
[42 20 15]
[48 62 76]]
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
關(guān)于數(shù)據(jù)分析中NumPy,Pandas,看完這一篇基本夠了
Python數(shù)據(jù)分析常用模塊介紹
圖解Pandas,創(chuàng)建數(shù)據(jù)對象 | 圖文第2篇
python基礎(chǔ)1| 索引與切片
pandas:把python變成小型數(shù)據(jù)庫,小型Excel等等,功能強(qiáng)大
推薦收藏!3.5萬字圖解 Pandas!
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服