如何將一列中的文字拆分為多列?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />有時,我有一列中包含資訊的資料集,我希望將其拆分為多列。 例如,在下面的圖像 1 中,我將四個標識符混為一列,我希望將其拆分為四個列。 我希望將批號 (11) 文字識別碼 (DAT) 樣本號(001,002 等)和文件類型 (.tif) 全部拆分為單獨的列(如圖 2 所示)。 在公式編輯器或使用 JSL 中執行此操作的最佳方法是什麼? 我附上了一個範例資料檔。
我擁有的:
圖1

我想要擁有什麼:
圖2

回覆:如何將一列中的文字拆分為多列?您能否提供一些範例數據,其中包含分割和堆疊之前和之後的查找結果?
回覆:如何將一列中的文字拆分為多列?嗨傑夫,
JMP 中的「拆分」和「堆疊」功能非常好。 我想您不知道 SQL 的等效項或在 SQL 中執行此操作的方法嗎? 如果這不是你給的建議,那也沒關係。 省得我去查看 SQL 板。
回覆:如何將一列中的文字拆分為多列?查看「文字到列」函數和 Word() 函數來完成您所詢問的問題
回覆:如何將一列中的文字拆分為多列?你好,
只是致力於將測試擴展到列功能。 我在名為 item code 的欄位中有一個字串 ACE_100_bb_29_icfg2 。 有沒有辦法用 _ 分隔此文本,然後在列項目代碼中只包含前 3 個字元(ABC)。
我現在這樣做的方式是 - 刪除此函數生成的所有其他列(項目代碼 1 ,2 等),並使用 ABC 重命名該列作為項目代碼。 想知道是否有有效的方法來做到這一點。
謝謝
回覆:如何將一列中的文字拆分為多列?吉姆回答了你的問題,但你不需要腳本。
- 選擇所有要變更的列。
- 選擇科爾斯>標準化屬性。
- 點選屬性並選擇資料類型。
- 點選屬性並選擇造型類型。
- 按照您想要的方式更改這兩個屬性。
- 點選好的。
腳本編寫很棒,但 JMP 針對互動進行了最佳化。
回覆:如何將一列中的文字拆分為多列?用於設定所有列的資料類型和建模類型的緊湊程式碼將是
dt = current data table();
for( i = 1, i <= NCols( dt ), i++,
column( dt, i ) << data type( "numeric" ) << modeling type( "continuous" );
);
關於轉置,您應該能夠使用 Stack Platform 獲得您想要的東西
表==>堆疊
回覆:如何將一列中的文字拆分為多列?再次嗨,非常感謝。 它有效並且我的資料被分割。 現在有 138 個欄位,名稱為 SPDATA 1 - SPDATA 138。
我知道這有點超出主題主題,也許我應該能夠做到這一點,但:
如何在緊湊的 JSL 語句中將所有列屬性設為數字和連續?
其次,我如何建立一個轉換後的資料表,其中頻譜資料是一列,根據一些可用的分類資料(所有 138 個資料點具有相同值的日期時間值),具有 138 行的倍數。
此致 波爾 RS
回覆:如何將一列中的文字拆分為多列?這是插件文件中的範例。確保您已安裝插件的版本 3,然後執行此範例。
bc_party = Open( "$SAMPLE_DATA\Consumer Preferences.jmp" );
com.jmp.jperk:texttocolumns( Column( bc_party , "floss delimited"), ",", bc_party );
如果它有效,那麼您可以使用此程式碼將其合併到 JSL 中
回覆:如何將一列中的文字拆分為多列?您好,我正在運行 JMP 13 並安裝了“文字到列”插件,並且可以從選單中使用它。
現在,我有一個資料表字元列,它表示來自分光光度計的光譜資料。 總共有 138 個子字串,以逗號分隔。 我想使用外掛程式在 JSL 中進行編碼,產生 138 個數字列,每個列中都有一個值。 (由於數據來自二極體陣列,波長分離是恆定的,所以我的數據中沒有它,因此不需要轉換它..)
我已經閱讀了一些有關如何執行此操作的範例,但我無法獲得正確的語法。
如果您能提供一點幫助,我們將不勝感激:使用插件從特定列產生 138 列的語法是什麼?
先致謝
波爾·RS
回覆:如何將一列中的文字拆分為多列?謝謝伊恩。 我使用的是 JMP 13.1.0,該頁面是空白的。
回到最近的問題,這裡是如何在 JSL 中呼叫文字到列:
dt = New Table( "Text2Col Example", Add Rows( 4 ),
New Column( "Col1", Character, "Nominal",
Set Values(
{"11 DAT 001.tif", "11 DAT 002.tif", "11 DAT 003.tif", "11 DAT 004.tif"}
)
),
New Column( "Col2", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [159.4308, 229.5031, 164.3414, 162.0241] )
)
);
dt << text to columns(delimiter(" "), columns(:Col1));回覆:如何將一列中的文字拆分為多列?在我的 13.1 版本中,我看到:


回覆:如何將一列中的文字拆分為多列?的文檔col << 文字到列是腳本索引中的空存根。 我嘗試了各種組合,但無法使其發揮作用。 JMP 的人可以告訴我們正確的文法嗎?
回覆:如何將一列中的文字拆分為多列?我最近發布了文字到列,版本 3它添加了對從 JSL 呼叫 Text to Columns 的支援。
回覆:如何將一列中的文字拆分為多列?Names Default To Here( 1 );
dt = New Table( "sample",
New Column( "column 0", character, values( {"11 DAT001.tif", "11 DAT002.tif", "11 DAT003.tif", "11 DAT004.tif"} ) )
);
// Pause so you can see it working
Wait( 2 );
// add some as an example of the elements using a formula
dt << New Column( "Column 1", formula( Num( Word( 1, :column 0 ) ) ) );
dt << New Column( "Column 2", character, formula( Substr( Word( 2, :column 0 ), 1, 3 ) ) );
dt << New Column( "Column 3", character, formula( Substr( Word( 2, :column 0 ), 6, 1 ) ) );
// Now do the last one, using JSL code
dt << New Column( "Column 4", character );
For( i = 1, i <= N Rows( dt ), i++,
:Column 4[i] = Word( -1, :Column 0[i],".");
);回覆:如何將一列中的文字拆分為多列?這如何用程式碼/JSL 編寫?
回覆:如何將一列中的文字拆分為多列?完美,這正是我正在尋找的,謝謝傑夫。
回覆:如何將一列中的文字拆分為多列?如果您使用的是 JMP 12 或更高版本,您可以使用列 -> 實用工具 -> 文字到列。

如果您使用的是 JMP 11 或更早版本,則可以獲得該插件,文字到列,版本 2 ,它與 now 內建函數執行相同的操作。
如果您想使用 JSL 或公式編輯器手動執行此操作,您會發現單字()功能方便。 相信我。
