我有一張資料表,我想匯總包含多個唯一值(包括缺失行)的欄位。所有行都相同的列很無趣,我只想看更有趣的列。
有幾種方法可以做到這一點,但我認為最簡單的方法是:
前往 Cols > 列管理器
結果表將有一個帶有 N Unique 的列,告訴您每列中有多少個唯一項目。它還將有一個包含 N Missing 的列,告訴您該列中有多少個缺失值。
不幸的是,對於連續列,N Unique 不會自動計算,但紅色彈出式選單提供了強制計算所有數字列的選項。
您也可以使用該表來選擇僅具有一個唯一值的欄位。然後在原始表中選擇這些列,以便您可以隱藏和排除它們,這樣您就不會被迫看到那些「不感興趣」的列。
我是盧德分子,JMP17 我很害怕。謝謝,我想我可以編寫這個腳本,只是想知道是否有人已經破解了它。
我不太喜歡為我的插件做“廣告”,但也許分析列可能會有幫助?我認為公共版本應該可以工作(並且也可以與 JMP17 一起工作)。帶有循環的簡單腳本也可以輕鬆地刪除/排除/隱藏/或處理這些列。
很好的添加 Jarmo!我需要對其進行一些修改,但它看起來很棒。這是我提出的腳本,用於匯總任何具有 > 1 個晶圓唯一條目的列。
dt = Current Data Table();
colList = Current Data Table() << Get Column Names( String );
dcols = {};
For( i = 1, i <= N Items( colList ), i++,
If( Contains( colList[i], " / " ),
Insert Into( dcols, colList[i] )
)
);
Show( dcols );
Split_Cols = {};
Insert Into( Split_Cols, :wafer );
For( j = 1, j <= N Items( dcols ), j++,
summarize(unique_values = by( Column(dcols[j]) ));
if (N Items(unique_values) > 1, Insert Into( Split_Cols, dcols[j] ) );
);
Show(Split_cols);
Current Data Table() << Summary(
Group( Split_cols ),
Freq( "None" ),
Weight( "None" )
);我建議大多數時候使用 For Each、Filter Each 和 Transform Each 循環,因為它們更快且更容易閱讀。但如果出現問題並且確實有一個討厭的錯誤/功能,那麼由於它們的速度,它們可能會更難以調試和處理。 使用Function() 預設本地和Each 函數)。
Names Default To Here(1);
dt = Current Data Table();
collist = dt << Get Column Names("String");
valid_cols = Filter Each({colname}, collist,
Summarize(dt, vals = By(Eval(colname)));
//Remove From(vals, Contains(vals, "")); // drop missing values if necessary
N Items(vals) > 1;
);
dt_summary = dt << Summary(
Group(valid_cols),
Freq("None"),
Weight("None"),
//Link to original data table(0),
Output Table("Non-Unique Summary")
);
這是建立簡單演示表的腳本
dt = New Table("demo",
Compress File When Saved(1),
New Column("Column 1", Character, "Nominal", Set Values({"a", "a", "a", "a"})),
New Column("Column 2", Character, "Nominal", Set Values({"b", "b", "b", ""})),
New Column("Column 3", Character, "Nominal", Set Values({"", "", "", ""})),
New Column("Column 4", Character, "Nominal", Set Values({"c", "d", "", ""})),
New Column("Column 5", Character, "Nominal", Set Values({"c", "d", "e", "f"}))
);
該插件是在 JMP 有 Columns Manager 之前創建的,大多數時候我仍然更喜歡它而不是 Columns Manager。我認為它們確實有不同的用例,Columns Manager 試圖用一些不錯的額外功能取代 Columns Viewer 平台,而 Analyse Columns 則從pandas profiling(似乎已重命名為 ydata profiling)中獲得了靈感,因為我必須能夠快速檢查我的數據看起來像是匯總統計數據。