最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

pandas數(shù)據(jù)拼接的實(shí)現(xiàn)示例

 更新時(shí)間:2020年04月16日 09:38:11   作者:知識(shí)追尋者  
這篇文章主要介紹了pandas數(shù)據(jù)拼接的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

一 前言

pandas數(shù)據(jù)拼接有可能會(huì)用到,比如出現(xiàn)重復(fù)數(shù)據(jù),需要合并兩份數(shù)據(jù)的交集,并集就是個(gè)不錯(cuò)的選擇,知識(shí)追尋者本著技多不壓身的態(tài)度蠻學(xué)習(xí)了一下下;

二 數(shù)據(jù)拼接

在進(jìn)行學(xué)習(xí)數(shù)據(jù)轉(zhuǎn)換之前,先學(xué)習(xí)一些數(shù)拼接相關(guān)的知識(shí)

2.1 join()聯(lián)結(jié)

有關(guān)merge操作知識(shí)追尋者這邊不提及,有空可能后面會(huì)專門出一篇相關(guān)文章,因?yàn)槠鋵W(xué)習(xí)方式根SQL的表聯(lián)結(jié)類似,不是幾行能說清楚的知識(shí)點(diǎn);

join操作能將 2 個(gè)DataFrame 合并為一塊,前提是DataFrame 之間的列沒有重復(fù);

# -*- coding: utf-8 -*-

import pandas as pd
import numpy as np

data1 = {
  'user' : ['zszxz','craler','rose'],
  'price' : [100, 200, 300],
  'hobby' : ['reading','running','hiking']
}
index1 = ['user1','user2','user3']
frame1 = pd.DataFrame(data1,index1)

data2 = {
  'person' : ['zszxz','craler','rose'],
  'number' : [100, 2000, 3000],
  'activity' : ['swing','riding','climbing']
}
index2 = ['user1','user2','user3']
frame2 = pd.DataFrame(data2,index2)

join = frame1.join(frame2)
print(join)

輸出

         user  price    hobby  person  number  activity
user1   zszxz    100  reading   zszxz     100     swing
user2  craler    200  running  craler    2000    riding
user3    rose    300   hiking    rose    3000  climbing

2.2 concat()拼接

使用 concat() 函數(shù)能將2個(gè) Series 拼接為一個(gè),默認(rèn)按行拼接;

ser1 = pd.Series(['111','222',np.NaN])
ser2 = pd.Series(['333','444',np.NaN])
# 默認(rèn)按行拼接
print(pd.concat([ser1, ser2]))

如果按列拼接則 axis = 1

ser1 = pd.Series(['111','222',np.NaN])
ser2 = pd.Series(['333','444',np.NaN])
# 按列拼接
print(pd.concat([ser1, ser2],axis=1))

輸出

     0    1
0  111  333
1  222  444
2  NaN  NaN

更近一步,指定key 參數(shù) 輸出的數(shù)據(jù)格式就和 DataFrame 一樣

ser1 = pd.Series(['111','222',np.NaN])
ser2 = pd.Series(['333','444',np.NaN])
# 按列拼接
data = pd.concat([ser1, ser2],axis=1, keys=['zszxz', 'rzxx'])
print(data)

輸出

  zszxz rzxx
0   111  333
1   222  444
2   NaN  NaN

注 : DataFrame 的 concat 操作 和 Series 類似;

2.3 combine_first()組合

索引重復(fù)時(shí)就可以使用combine_first進(jìn)行拼接

ser1 = pd.Series(['111','222',np.NaN],index=[1,2,3])
ser2 = pd.Series(['333','444',np.NaN,'555'],index=[1,2,3,4])
data = ser1.combine_first(ser2)
print(data)

輸出

1    111
2    222
3    NaN
4    555
dtype: object

將Series 位置互換一下,可以看見基準(zhǔn)將以 ser2為準(zhǔn);

ser1 = pd.Series(['111','222',np.NaN],index=[1,2,3])
ser2 = pd.Series(['333','444',np.NaN,'555'],index=[1,2,3,4])
data = ser2.combine_first(ser1)
print(data)

輸出

1    333
2    444
3    NaN
4    555
dtype: object

2.4 軸轉(zhuǎn)換

準(zhǔn)備的數(shù)據(jù)

# -*- coding: utf-8 -*-

import pandas as pd
import numpy as np

data = {
  'user' : ['zszxz','craler','rose'],
  'price' : [100, 200, 300],
  'hobby' : ['reading','running','hiking']
}
index = ['user1','user2','user3']
frame = pd.DataFrame(data,index)
print(frame)

輸出

         user  price    hobby
user1   zszxz    100  reading
user2  craler    200  running
user3    rose    300   hiking

stack() 將 列轉(zhuǎn)為行;

# -*- coding: utf-8 -*-

import pandas as pd
import numpy as np

data = {
  'user' : ['zszxz','craler','rose'],
  'price' : [100, 200, 300],
  'hobby' : ['reading','running','hiking']
}
index = ['user1','user2','user3']
frame = pd.DataFrame(data,index)
print(frame.stack())

輸出

user1  user       zszxz
       price        100
       hobby    reading
user2  user      craler
       price        200
       hobby    running
user3  user        rose
       price        300
       hobby     hiking
dtype: object

使用 unstack()將 數(shù)據(jù)結(jié)構(gòu)重新返回

# -*- coding: utf-8 -*-

import pandas as pd
import numpy as np

data = {
  'user' : ['zszxz','craler','rose'],
  'price' : [100, 200, 300],
  'hobby' : ['reading','running','hiking']
}
index = ['user1','user2','user3']
frame = pd.DataFrame(data,index)
sta = frame.stack()
print(sta.unstack())

輸出

         user price    hobby
user1   zszxz   100  reading
user2  craler   200  running
user3    rose   300   hiking

到此這篇關(guān)于pandas數(shù)據(jù)拼接的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)pandas數(shù)據(jù)拼接內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • 淺析Django中關(guān)于session的使用

    淺析Django中關(guān)于session的使用

    這篇文章主要介紹了Django下關(guān)于session的使用,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-12-12
  • 用不到50行的Python代碼構(gòu)建最小的區(qū)塊鏈

    用不到50行的Python代碼構(gòu)建最小的區(qū)塊鏈

    這篇文章主要為大家詳細(xì)介紹了用不到50行的Python代碼構(gòu)建最小的區(qū)塊鏈,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • Python列表切片用法示例

    Python列表切片用法示例

    這篇文章主要介紹了Python列表切片用法,結(jié)合實(shí)例形式分析了Python列表切片的常見操作方法及相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2017-04-04
  • Python txt文件如何轉(zhuǎn)換成字典

    Python txt文件如何轉(zhuǎn)換成字典

    這篇文章主要介紹了Python txt文件如何轉(zhuǎn)換成字典,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-11-11
  • python機(jī)器學(xué)習(xí)darts時(shí)間序列預(yù)測和分析

    python機(jī)器學(xué)習(xí)darts時(shí)間序列預(yù)測和分析

    這篇文章主要介紹了python機(jī)器學(xué)習(xí)darts時(shí)間序列預(yù)測和分析使用實(shí)例探索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • Python批量操作Excel文件詳解

    Python批量操作Excel文件詳解

    因?yàn)椴┲魉诘牡胤?,需要每周整理全校的青年大學(xué)習(xí)數(shù)據(jù),Excel操作本身不難,但是這種毫無意義的體力勞動(dòng)做久了就會(huì)很無趣,剛好我想起來上學(xué)期接觸過Python,想著能不能試一下,取代這種無意義的勞動(dòng)
    2021-11-11
  • python計(jì)算auc的方法

    python計(jì)算auc的方法

    在本篇文章里小編給大家整理的是關(guān)于python計(jì)算auc的方法及相關(guān)內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2020-09-09
  • 淺析Python中return和finally共同挖的坑

    淺析Python中return和finally共同挖的坑

    最近在工作中遇到一個(gè)坑,發(fā)現(xiàn)這個(gè)坑居然存在于return和finally,所以覺著有必要總結(jié)分享一下,下面這篇文章主要介紹了關(guān)于Python中return和finally共同挖的坑,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-08-08
  • 使用sklearn進(jìn)行對數(shù)據(jù)標(biāo)準(zhǔn)化、歸一化以及將數(shù)據(jù)還原的方法

    使用sklearn進(jìn)行對數(shù)據(jù)標(biāo)準(zhǔn)化、歸一化以及將數(shù)據(jù)還原的方法

    今天小編就為大家分享一篇使用sklearn進(jìn)行對數(shù)據(jù)標(biāo)準(zhǔn)化、歸一化以及將數(shù)據(jù)還原的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • Python實(shí)現(xiàn)炸金花游戲的示例代碼

    Python實(shí)現(xiàn)炸金花游戲的示例代碼

    本文主要介紹了Python實(shí)現(xiàn)炸金花游戲的示例代碼,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01

最新評論

建昌县| 加查县| 合江县| 招远市| 德阳市| 崇明县| 灵璧县| 崇明县| 楚雄市| 珠海市| 都匀市| 同江市| 宁远县| 台安县| 广昌县| 邮箱| 荔波县| 衡水市| 剑阁县| 临邑县| 满洲里市| 治县。| 资阳市| 绥化市| 苍山县| 伊金霍洛旗| 丰原市| 沭阳县| 富川| 嫩江县| 浙江省| 吉木萨尔县| 申扎县| 廊坊市| 壶关县| 大宁县| 威宁| 呼图壁县| 开远市| 卢氏县| 千阳县|