JMP 12.2
我想了解這個數字的含義,最重要的是如何刪除/修改它。我想避免重複列,因為這些表非常大,需要快速操作。
下面的“字符”一詞後面顯示的數字“ 19”(數字可以不同,我只是選擇19作為示例):
New Table( "Untitled",
Add Rows( 1 ),
New Column( "Column1", Character( 19 ), "Nominal", Set Values( {"Hello World"} ) )
)一旦生成了表格,我將如何盡快擺脫“(19)”?
我試過了:
:Column1 << Data type( Character );
:Column1 << Data type( Character() );<BR />:Column1 << Data type( Character(0) );
我可以使用GetScript()查看它,而不能使用ShowProperties()查看它。
您可能會說它是良性的,通常我不擔心這個數字,但是我發現了一種情況,即Join變得錯誤並帶有適當的數字(或者這個數字可能會影響Joins)。
您的問題使我感到困惑。 自1990年代以來,我一直在使用JMP,並且不記得曾經遇到過“ Character(x)”。 所以我做了一些調查。 使用此符號的大多數參考是從提供列寬信息到.txt文件或OLE應用程序的讀入。 腳本指南中的“添加多列”有一個參考。 但是,在查看腳本索引中“添加多列”的語法時,它指的是使用一個稱為“ fieldwidth(number)”的元素,而不是在Character的數據類型指定之後使用(number)。 據我所知,它只是設置了要創建的列的最小寬度。 由於JMP字符值/列是動態的,並且長度可以從0到十億個字符,因此我建議您在編碼中,在定義新的數據類型為Character的列後,不要再使用寬度規範。
現在,如何擺脫最小寬度。
我發現,如果您為指定寬度上的有效長度分配字符值,則JMP會刪除寬度規範。
所以給你的例子
New Table( "Untitled",
Add Rows( 1 ),
New Column( "Column1", Character( 19 ), "Nominal", Set Values( {"Hello World"} ) )
);
檢索數據表腳本返回
New Table( "Untitled",
Add Rows( 1 ),
New Column( "Column1",
Character( 19 ),
"Nominal",
Set Values( {"Hello World"} )
)
)
如果運行以下JSL,該JSL獲取數據表中第一行的值,並為第一行分配一個冗長的值,然後最終使用此代碼將原始值替換回
holdValue = :Column1[1];
:Column1[1] = repeat("a",500);
:column1[1] = holdValue;
檢索到的表腳本是
New Table( "Untitled",
Add Rows( 1 ),
New Column( "Column1", Character, "Nominal", Set Values( {"Hello World"} ) )
)
寬度參考已刪除。
所有這些都使用JMP 12.2進行了測試
這是我想出的消除字符寬度問題的方法。 其他一些社區成員可能有更好的方法。 我希望他們能做到!
是的,我很難找到有關數字含義的文檔。我肯定不把它放在那裡 似乎是自動生成的。
您的方法似乎可行,但我想知道是否有更優雅的方法來修改或刪除它。
多謝您的協助!