Pandas資料離散化處理

2022-06-20 11:57:09 字數 847 閱讀 7886

# 資料離散化處理

import pandas as pd

import matplotlib.pyplot as plt

from pylab import mpl

# 設定顯示中文字型

mpl.rcparams["font.sans-serif"] = ["simhei"]

data = pd.read_csv("../data/stock_day.csv")

# 取p_change這一列

data_p = data["p_change"]

# print(data_p.head())

# pd.qcut(data, q):

# 對資料進行分組將資料分組,一般會與value_counts搭配使用,統計每組的個數

# series.value_counts():統計分組次數

# 自行分組

qcut = pd.qcut(data_p, 10)

# 計算分到每個組資料個數

qcut.value_counts()

# 自己指定分組區間

bins = [-100, -7, -5, -3, 0, 3, 5, 7, 100]

p_counts = pd.cut(data_p, bins)

# print(p_counts)

# 得出one-hot編碼矩陣

dummies = pd.get_dummies(p_counts, prefix="rise")

print(dummies)

qcut、cut實現資料分組【知道】

get_dummies實現啞變數矩陣【知道】

資料離散化處理

離散化,把無限空間中有限的個體對映到有限的空間中去,以此提高演算法的時空效率。通俗的說,離散化是在不改變資料相對大小的條件下,對資料進行相應的縮小。例如 原資料 1,999,100000,15 處理後 1,3,4,2 原資料 處理後 例如有時需要將資料直接作為陣列下標,但因為資料太大而無法開陣列時,...

資料離散化處理

離散化處理有幾個方法 方法一 適用於所有情況 sort unique lower bound 三段式 關於這幾個函式請見我的另一篇部落格 1 申請兩個陣列num和numcopy 這個陣列是num的副本 2 利用unique函式對num陣列進行去重 3 利用lower bound函式獲得numcopy...

資料離散化處理

有時候,我們需要使用陣列下標來維護某些資料結構 例如並查集 但如果資料範圍太大我們開不了這麼大的陣列,這時候,我們就要將資料進行離散化。例如資料我們可以根據相對大小關係67542347 75331434 87433476 99844531來開乙個新陣列編號,二分查詢在新陣列裡的編號。如b 1 675...