空白値を取り除く機能こんにちは、リストから空白の値を削除する簡単なJSL関数を記述しようとしています。
誰かがこのコードを微調整するのを手伝ってくれる?(それは私にnullを返します)
ありがとう、DJ
myList={"apple","orange","banana","","grape","","plum"};
StripBlanks = function({x},
for(a=nitems(x),a>=1,a--,
if(
x[a]=="",
x=remove(x,a)
)
)
);
StripBlanks(myList);
スクリプティングRe:空白値を取り除く機能関数の最後のステートメントとしてxを返す必要があります。
myList = {"apple", "orange", "banana", "", "grape", "", "plum"};
StripBlanks = Function( {x},
For( a = N Items( x ), a >= 1, a--,
If( x[a] == "",
x = Remove( x, a )
)
);
x;
);
StripBlanks( myList );Re:空白値を取り除く機能素晴らしい!それが私の問題でした!
Re:空白値を取り除く機能うまくいきました。これを行うために関数を作成する必要は本当にないことを指摘しておきます。
の Loc() 関数は、リスト内の空白のインデックスを提供し、使用できます削除する() またはから削除() それらをすべて一度に取り除くために。
myList = {"apple", "orange", "banana", "", "grape", "", "plum"};
blanks = Loc( mylist, "" ); // [4,6]
blanks = As List( blanks ); // {4, 6}
Remove From( mylist, blanks );
ここでの唯一のトリックは、Loc()が行列を返し、Remove()とRemove From()がリスト引数を必要とするため、再キャストする必要があることですリスト()として 。