詳解pandas中Series()和DataFrame()的區(qū)別與聯(lián)系
更新時間:2023年01月11日 10:06:17 作者:我是小螞蟻
本文主要介紹了詳解pandas中Series()和DataFrame()的區(qū)別與聯(lián)系,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
區(qū)別:
- series,只是一個一維數(shù)據(jù)結(jié)構(gòu),它由index和value組成。
- dataframe,是一個二維結(jié)構(gòu),除了擁有index和value之外,還擁有column。
聯(lián)系:
- dataframe由多個series組成,無論是行還是列,單獨拆分出來都是一個series。
代碼演示:
import numpy as np import pandas as pd from pandas import Series, DataFrame data = {'Country':['Belgium', 'India', 'Brazil'], ? ? ? ? 'Capital':['Brussels', 'New Delhi', 'Brasilia'], ? ? ? ? 'Population':[11190846, 1303171035, 207847528] ? ? ? ? } # Series s1 = Series(data['Country']) print(s1) ''' 0 ? ?Belgium 1 ? ? ?India 2 ? ? Brazil dtype: object ''' print(s1.values) # 類型: <class 'numpy.ndarray'> ''' ['Belgium' 'India' 'Brazil'] ''' print(s1.index) ''' RangeIndex(start=0, stop=3, step=1) ''' # 為Series指定index s1 = Series(data['Country'], index=['A', 'B', 'C']) print(s1) ''' 索引更改 A ? ?Belgium B ? ? ?India C ? ? Brazil dtype: object ''' # Dataframe df1 = pd.DataFrame(data) print(df1) ''' ? ? ?Capital ?Country ?Population 0 ? Brussels ?Belgium ? ?11190846 1 ?New Delhi ? ?India ?1303171035 2 ? Brasilia ? Brazil ? 207847528 ''' print(df1['Capital']) # 類型: series ''' 0 ? ? Brussels 1 ? ?New Delhi 2 ? ? Brasilia Name: Capital, dtype: object ''' print(df1.iterrows()) # 返回 一個 生成器 <generator object DataFrame.iterrows at 0x7f226a67b728> for row in df1.iterrows(): ? ? print(row) ? ? print(row[0], row[1]) ? ? print(type(row[0]), type(row[1])) ? ? break '''? print(row) 返回了一個元組 (0, Capital ? ? ? Brussels Country ? ? ? ?Belgium Population ? ?11190846 Name: 0, dtype: object) ''' ''' print(row[0], row[1]) 的返回值 0 Capital ? ? ? Brussels Country ? ? ? ?Belgium Population ? ?11190846 Name: 0, dtype: object ''' ''' print(type(row[0]), type(row[1])) <class 'int'> <class 'pandas.core.series.Series'> row[1] 是一個 series,而且原來的列名,現(xiàn)在變成了現(xiàn)在的索引名, 由此可見,dataframe是由多個行列交錯的series組成。 ''' # 現(xiàn)在可以 構(gòu)建幾個series s1 = pd.Series(data['Country']) s2 = pd.Series(data['Capital']) s3 = pd.Series(data['Population']) df_new = pd.DataFrame([s1, s2, s3], index=['Country', 'Captital', 'Population']) print(df_new) ''' ? ? ? ? ? ? ? ? ? ?0 ? ? ? ? ? 1 ? ? ? ? ?2 Country ? ? ?Belgium ? ? ? India ? ? Brazil Captital ? ?Brussels ? New Delhi ? Brasilia Population ?11190846 ?1303171035 ?207847528 可以看到,行 和 列 都是顛倒的,因此需要進行一下轉(zhuǎn)置 ''' print(df_new.T) ''' ? ?Country ? Captital ?Population 0 ?Belgium ? Brussels ? ?11190846 1 ? ?India ?New Delhi ?1303171035 2 ? Brazil ? Brasilia ? 207847528 ''' ''' 總結(jié): ? ? series, 就是一個 一維 的數(shù)據(jù)結(jié)構(gòu),它是由?。椋睿洌澹『汀。觯幔欤酰濉〗M成。 ? ? dataframe, 是一個 二維 數(shù)據(jù)結(jié)構(gòu),它由多個?。螅澹颍椋澹蟆?gòu)成。 '''
到此這篇關于詳解pandas中Series()和DataFrame()的區(qū)別與聯(lián)系的文章就介紹到這了,更多相關pandas Series()和DataFrame()內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python實現(xiàn)PDF轉(zhuǎn)MP3的示例代碼
我們平常看到很多文件都是PDF格式,網(wǎng)上的各類書籍多為此格式。有時候不方便閱讀,或者怕費眼睛傷頸椎,那么有沒有一種方法可以把它變?yōu)橐纛l,本文就來和大家詳細講講2023-05-05Python的Tornado框架實現(xiàn)圖片上傳及圖片大小修改功能
Tornado是一個異步的Python Web開發(fā)框架,同時也是一個優(yōu)秀的異步服務器開發(fā)庫,這里我們將來講解一下Python的Tornado框架實現(xiàn)圖片上傳及圖片大小修改功能方面的一些重點:2016-06-06Python二叉樹的鏡像轉(zhuǎn)換實現(xiàn)方法示例
這篇文章主要介紹了Python二叉樹的鏡像轉(zhuǎn)換實現(xiàn)方法,結(jié)合實例形式分析了二叉樹鏡像轉(zhuǎn)換的原理及Python相關算法實現(xiàn)技巧,需要的朋友可以參考下2019-03-03Python3.9.1中使用split()的處理方法(推薦)
這篇文章主要介紹了Python3.9.1中使用split()的處理方法(推薦),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-02-02