摘要:有時候我們只需要資料集中的一部分,並不需要全部的資料。這個時候我們就要對資料集進行隨機的抽樣。pandas中自帶有抽樣的方法。
應用場景:
我有10w行資料,每一行都11列的屬性。
現在,我們只需要隨機抽取其中的2w行。
實現方法很簡單:
利用pandas庫中的sample。
dataframe.sample(n=none, frac=none, replace=false, weights=none, rjbkvffolczandom_state=none, axis=none)
n是要抽取的行數。(例如n=20000時,抽取其中的2w行)
frac是抽取的比列。(有一些時候,我們並對程式設計客棧具體抽取的行數不關係,我們想抽取其中的百分比,這個時候就可以選擇使用frac,例如frac=0.8,就是抽取其中80
replace:是否為有放回抽樣,取replace=true時為有放回抽樣。
weights這個是每個程式設計客棧樣本的權重,具體可以看官方文件說明。
random_state這個在之前的文章已經介紹過了。
axis是選擇抽取資料的行還是列。axis=0的時是抽取行,axis=1時是抽取列(也就是說axis=1時,在列中隨機抽取n列,在axis=0時,在行中隨機抽取n行)
具體用法:
假設dataframe為df
import pandas as pd
df.sample(n=20000)
另外,介紹一種不是pandas中的方法。如果想用numpy這個庫進行也可以。
import numpy as np
np.random.sample(your_index)
本文標題: python pandas如何對資料集隨機抽樣
本文位址: /jiaoben/python/267011.html
Python pandas,建立Series型別
numpy只能處理數值型別的資料。pandas除了可以處理數值型別外,還可以處理非數值型別的資料 例如 字串 時間序列等 pandas常用的資料型別 series 一維,帶標籤的陣列,對應資料庫中的一條記錄 dataframe 二維,series容器,對應資料庫中的表 demo.py series的...
python pandas使用記錄
在使用numpy中array格式的矩陣時,我們通常使用如a 2 4,5 10 獲取陣列中一部分資料,但是dataframe結構的陣列就不能這麼寫,可以使用iloc方法,即index locate,另外有個相似的方法loc,這個方法是通過column名字進行資料定位的 import pandas as...
Python pandas總結未完
obj.index obj.values obj4.name population obj4.index.name state obj.index bob steve jeff ryan data frame pd.dataframe data frame2 pd.dataframe data,co...