我的模擬資料集中有 4 列(文件附在下面)。 「公司」欄位以「月-年」欄位和「州」欄分組。 每個「Companys」列值都與「Sectcor」列中的一個值相關聯。 我想找到每組月-年和州列中缺少哪些值,例如部門“DK”有與其關聯的公司“C”和“D”,但對於 2021 年 1 月組,CA 我們有 2 行與其關聯部門“DK”的公司“C”和“D”,但在2021 年2 月組中,CA 只有一行與Setcor“DK”的公司“D”關聯。 我想插入公司“C”的缺失行,例如 Feb-2021、CA、“C”和計數列的 0。
我想要紅色的行。 請幫忙解決這個問題!
您可以拆分數據,然後再次堆疊。
如果來源表中缺少一行,則分割資料表中將出現一個空位 - 並且在堆疊後它將保持為空。
因此,您必須在末尾用 0 替換缺失值。
dt = New Table( "Sheet1",
Add Rows( 16 ),
New Column( "Month - Year",
Numeric,
Format( "Format Pattern", "<MMM>-<YYYY>"),
Input Format( "Format Pattern", "<MMM>-<YYYY>" ),
Set Values( {"Jan-2021", "Jan-2021", "Jan-2021", "Jan-2021", "Jan-2021", "Jan-2021","Jan-2021", "Feb-2021", "Feb-2021", "Feb-2021", "Feb-2021", "Feb-2021","Mrz-2021", "Mrz-2021", "Mrz-2021", "Mrz-2021"})),
New Column( "State",Character,
Set Values({"FL", "FL", "FL", "CA", "CA", "CA", "CA", "FL", "FL", "CA", "CA", "CA","FL", "FL", "FL", "FL"})),
New Column( "Companys", Character,Set Values({"A", "B", "C", "A", "C", "D", "E", "A", "B", "A", "B", "D", "A", "B","D", "E"})),
New Column( "Sector",Character, Set Values( {"JF", "JF", "DK", "JF", "DK", "DK", "RT", "JF", "JF", "JF", "JF", "DK","JF", "JF", "DK", "RT"})),
New Column( "Count",Set Values([2, 56, 4, 12, 17, 99, 4, 23, 20, 1, 15, 18,31, 2, 13, 10])));
dtSplit= dt << Split(
Split By( :"Month - Year"n ),
Split( :Count ),
Group( :Sector, :Companys ),
Remaining Columns( Drop All ),
Sort by Column Property
);
dtStacked = dtSplit <<STACK></STACK></YYYY></MMM></YYYY></MMM>