為此,我有一個串列串列(這是我的集群),例如:
asset_clusts=[[0,1],[3,5],[2,4, 12],...]
原始資料框(在我的代碼中我稱之為“x”)是: 回傳標準普爾 500 指數公司的時間序列
我想選擇原始資料幀的列 [0,1] 并計算它們的平均值(按行)并將其存盤在新的資料幀中,然后計算列 [3, 5] 的平均值,并將其添加到新的資料框等等...
mu=pd.DataFrame()
for j in range(get_number_of_elements(asset_clusts)):
mu=x.iloc[:,asset_clusts[j]].mean(axis=1)
但是,它只給了我一列,我檢查了一下,這一列是最后一個簇列的平均值
在歧義的情況下,get_number_of_elements 的函式是:
def get_number_of_elements(clist):
count = 0
for element in clist:
count = 1
return count
uj5u.com熱心網友回復:
def get_number_of_elements(clust_list):
count = 0
for element in clust_list:
count = 1
return count
uj5u.com熱心網友回復:
我解決了它,如果它對其他人有幫助,這是最終的功能:
def clustered_series(x, org_asset_clust):
"""
x:return data
org_asset_clust: list of clusters
----> mean of each cluster returns by row
"""
def get_number_of_elements(org_asset_clust):
count = 0
for element in org_asset_clust:
count = 1
return count
mu=[]
for j in range(get_number_of_elements(org_asset_clust)):
mu.append(x.iloc[:,org_asset_clust[j]].mean(axis=1))
cluster_mean=pd.concat(mu, axis=1)
return cluster_mean
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/399310.html
上一篇:熊貓按特定順序填充()行
