詳解pandas中Series()和DataFrame()的區(qū)別與聯(lián)系
區(qū)別:
- series,只是一個(gè)一維數(shù)據(jù)結(jié)構(gòu),它由index和value組成。
- dataframe,是一個(gè)二維結(jié)構(gòu),除了擁有index和value之外,還擁有column。
聯(lián)系:
- dataframe由多個(gè)series組成,無(wú)論是行還是列,單獨(dú)拆分出來(lái)都是一個(gè)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) # 類(lèi)型: <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']) # 類(lèi)型: series ''' 0 ? ? Brussels 1 ? ?New Delhi 2 ? ? Brasilia Name: Capital, dtype: object ''' print(df1.iterrows()) # 返回 一個(gè) 生成器 <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) 返回了一個(gè)元組 (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] 是一個(gè) series,而且原來(lái)的列名,現(xiàn)在變成了現(xiàn)在的索引名, 由此可見(jiàn),dataframe是由多個(gè)行列交錯(cuò)的series組成。 ''' # 現(xiàn)在可以 構(gòu)建幾個(gè)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 可以看到,行 和 列 都是顛倒的,因此需要進(jìn)行一下轉(zhuǎn)置 ''' print(df_new.T) ''' ? ?Country ? Captital ?Population 0 ?Belgium ? Brussels ? ?11190846 1 ? ?India ?New Delhi ?1303171035 2 ? Brazil ? Brasilia ? 207847528 ''' ''' 總結(jié): ? ? series, 就是一個(gè) 一維 的數(shù)據(jù)結(jié)構(gòu),它是由?。椋睿洌澹『汀。觯幔欤酰濉〗M成。 ? ? dataframe, 是一個(gè) 二維 數(shù)據(jù)結(jié)構(gòu),它由多個(gè)?。螅澹颍椋澹蟆?gòu)成。 '''
到此這篇關(guān)于詳解pandas中Series()和DataFrame()的區(qū)別與聯(lián)系的文章就介紹到這了,更多相關(guān)pandas Series()和DataFrame()內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python?Tkinter庫(kù)從入門(mén)到進(jìn)階使用教程
Tkinter是Python標(biāo)準(zhǔn)庫(kù)中內(nèi)置的圖形用戶(hù)界面(GUI)工具包,提供了創(chuàng)建窗口、按鈕、文本框等GUI元素的功能,本文將介紹Tkinter的基礎(chǔ)知識(shí),幫助大家快速入門(mén)2023-12-12Python實(shí)現(xiàn)PDF轉(zhuǎn)MP3的示例代碼
我們平??吹胶芏辔募际荘DF格式,網(wǎng)上的各類(lèi)書(shū)籍多為此格式。有時(shí)候不方便閱讀,或者怕費(fèi)眼睛傷頸椎,那么有沒(méi)有一種方法可以把它變?yōu)橐纛l,本文就來(lái)和大家詳細(xì)講講2023-05-05Python的Tornado框架實(shí)現(xiàn)圖片上傳及圖片大小修改功能
Tornado是一個(gè)異步的Python Web開(kāi)發(fā)框架,同時(shí)也是一個(gè)優(yōu)秀的異步服務(wù)器開(kāi)發(fā)庫(kù),這里我們將來(lái)講解一下Python的Tornado框架實(shí)現(xiàn)圖片上傳及圖片大小修改功能方面的一些重點(diǎn):2016-06-06python函數(shù)默認(rèn)參數(shù)使用避坑指南
這篇文章主要為大家介紹了python函數(shù)默認(rèn)參數(shù)使用的踩雷避坑詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07Python二叉樹(shù)的鏡像轉(zhuǎn)換實(shí)現(xiàn)方法示例
這篇文章主要介紹了Python二叉樹(shù)的鏡像轉(zhuǎn)換實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了二叉樹(shù)鏡像轉(zhuǎn)換的原理及Python相關(guān)算法實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-03-03Python3.9.1中使用split()的處理方法(推薦)
這篇文章主要介紹了Python3.9.1中使用split()的處理方法(推薦),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02