我已经使用UMAP将标准虹膜数据集投影到了二维,并将2D图的x和y位置的UMAP维度作为列添加到了数据框:
import numpy as np
import math
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns
from sklearn.datasets import load_iris
import umap # pip install umap-learn
iris = load_iris()
iris_df = pd.DataFrame(iris.data,columns=iris.feature_names)
iris_df['species'] = pd.Series(iris.target).map(dict(zip(range(3),iris.target_names)))
_umap = umap.UMAP().fit_transform(iris.data)
iris_df['UMAP_x'] = _umap[:,0]
iris_df['UMAP_y'] = _umap[:,1]
iris_df.head()
我想将UMAP_x
和UMAP_y
列都合并为25个bin,然后将数据帧中的其他列更改为每个bin中列的平均值。怎么做?感觉像cut
或重新采样可能会找到答案,但是我不确定如何实现。