<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />大家好
我需要一些幫助來分析同一個表的多個列的最佳方法。
我的表將包含類似於以下內容的列:
Z 3,X 1,Z 2,X 3,X 4,Y 1,X 2,Y 2,Z 1
如果可能的話,我想將所有X,Y和Z組合在一起並按數字順序排列。這是我處理的內容的精簡版本,通常是數百列的數量級,需要不同的組大小。
我認為最簡單的方法是根據列名創建一個列表,然後使用loc()功能返回每個相似列名的位置。但是,使用group()命令的最佳方法是什麼?
任何有關此問題的幫助表示讚賞。
謝謝!
效果很好,謝謝MS!
跟進問題...... 有沒有簡單的方法向用戶顯示所有組的列表,讓他們從列表中再選擇一個組,然後讓腳本創建僅包含所選組的子集表?
可能有幾種方法可以做到這一點。這裡有一個想法適用於任何表,其中分組將基於列名的第一個字母。
//示例表
名 = { Z 3 , X 1 , Z 2 , X 3 , X 4 ,是1 , X 2 ,是2 , Z 1 } ;
DT = 新表 ( “測試” ) ;
對於 ( 一世 = 1 ,一世 <= N項 ( 名 ) ,一世 ++,
DT << 新欄目 ( 燒焦 ( 名 [ 一世 ] ) ,數字 )
) ;
//對錶列進行排序並列出列名的第一個字母
DT << 按名稱重新排序 () ;
collist = DT << 獲取列名稱 ( 串 ) ;
對於 ( 一世 = 1 ,一世 <= N Col ( DT ) ,一世 ++,
collist [ 一世 ] = 剩下 ( collist [ 一世 ] , 1 )
) ;
//製作唯一列名稱第一個字母的列表
col_type = 關聯數組 ( collist ) << 得到鑰匙 ;
//組列
對於 ( 一世 = 1 ,一世 <= N項 ( col_type ) ,一世 ++,
POS = 祿 ( collist , col_type [ 一世 ] ) ;
DT << 組列 ( 柱 ( POS [ 1 ] ) , N行 ( POS ) ) ;
) ;