机器学习四剑客3——Pandas
生活随笔
收集整理的這篇文章主要介紹了
机器学习四剑客3——Pandas
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
- pandas是python第三方庫,提供高性能易用數(shù)據(jù)類型和分析工具
- pandas基于numpy實現(xiàn),常與numpy和matplotlib一同使用
- pandas中有兩大核心數(shù)據(jù)結(jié)構(gòu):Series(一維數(shù)據(jù)) 和 DataFrame(多特征數(shù)據(jù))
>> 01 Series(一維數(shù)據(jù))
- Series是一種類似于一維數(shù)組的對象,它由一維數(shù)組(各種numpy數(shù)據(jù)類型)以及一組與之相關(guān)的數(shù)據(jù)標簽(即索引)組成;
- Seriesd的數(shù)據(jù)結(jié)構(gòu)為“鍵值對”的形式,“鍵”可以重復(fù);
- Series的創(chuàng)建:①使用Python數(shù)組創(chuàng)建? ②使用numpy數(shù)組創(chuàng)建? ③使用python字典創(chuàng)建
import pandas as pd
import numpy as np
pds1 = pd.Series([99, 98], index=['xiaoming', 'xiaohong'])
print(pds1) # 使用Python數(shù)組創(chuàng)建pds2 = pd.Series(np.arange(3,6))
print(pds2) # 使用numpy數(shù)組創(chuàng)建pds3 = pd.Series({'name': 'xiaoming', 'age': 21, 'score': 99})
print(pds3) # 使用python字典創(chuàng)建# 注意:與字典不同的是:Series允許索引重復(fù)
- Series的字符串表現(xiàn)形式為:索引在左邊,值在右邊
import pandas as pd
pds = pd.Series([1, 2, 3, 4])
print(pds)
- 如果沒有為數(shù)據(jù)指定索引,則自動創(chuàng)建一個0到N-1(N為數(shù)據(jù)的長度)的整數(shù)型索引
- 可以通過Series的values和index屬性獲取其數(shù)組表示形式和索引對象
import pandas as pd
pds = pd.Series([1, 2, 3, 4])
print('values',pds.values)
print('index',pds.index)
- 與普通numpy數(shù)組相比,可以通過索引的方式選取Series中的單個或一組值
import pandas as pd
pds = pd.Series([1, 2, 3, 4])
print(pds[0]) # 讀取第一個值
pds[1] = 10 # 更改第二個值
print(pds[[1,2]])
- Series中最重要的一個功能是:在算術(shù)運算中自動對齊不同索引的數(shù)據(jù)
import pandas as pd
stu1 = pd.Series({'math': 100, 'physics': 98, 'chemistry': 90})
stu2 = pd.Series({'math': 95, 'physics': 96, 'chemistry': 94})
print(stu1 + stu2)
>> 02 DataFrame(多特征數(shù)據(jù))
- DataFrame是一個表格型的數(shù)據(jù)結(jié)構(gòu),含有一組有序的列,每列可以是不同的值類型(數(shù)值、字符串、布爾值等)
- DataFrame既有行索引也有列索引,它可以被看做由Series組成的字典(共用同一個索引)
- 跟其他類似的數(shù)據(jù)結(jié)構(gòu)相比,DataFrame中面向行和面向列的操作基本上是平衡的
- DataFrame中的數(shù)據(jù)是以一個或多個二維塊存放的(而不是列表、字典或別的一維數(shù)據(jù)結(jié)構(gòu))
import pandas as pddata = {'name': ['A1', 'A2', 'A3'], 'score': [100, 99, 98]}
fr = pd.DataFrame(data)
print(fr)# 可按照指定的列順序創(chuàng)建
fr = pd.DataFrame(data, columns=['score', 'name'])
print(fr)
- 可以給DataFrame創(chuàng)建或修改列的值
import pandas as pddata = {'name': ['A1', 'A2', 'A3'], 'score': [100, 99, 98]}
fr = pd.DataFrame(data)
# 新增某列的值
fr['age'] = [21,22,20]
print(fr)# 修改某一個值
fr.loc[1, 'age'] = 30
print(fr)
- values屬性會以二維ndarray的形式返回DataFrame中的數(shù)據(jù)
import pandas as pddata = {'name': ['A1', 'A2', 'A3'], 'score': [100, 99, 98]}
fr = pd.DataFrame(data)
print(fr.values)
總結(jié)
以上是生活随笔為你收集整理的机器学习四剑客3——Pandas的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 机器学习四剑客2——Matplotlib
- 下一篇: 红龙鱼该如何分类,市场大概得多少价位?