특정 문자열이 포함 된 열 선택 및 삭제안녕하세요 jsl 여러분,
누군가 아래에서 내 코딩의 문제점에 대해 언급 할 수 있습니까? "Dummy"라는 문자열이 포함 된 열을 찾고 삭제하려고하는데 작동하지 않습니다. Pls 도움.
여기에 기본 이름 (1);
dt = 새 테이블 ( "예제",
행 추가 (3),
새 열 ( "A_Dummy", Character, "Nominal", Set Values ({ "xx", "yy", "zz"})),
새 열 ( "B", 문자, "명목", 값 설정 ({ "a", "b", "c"})),
New Column ( "C_Dummy", Character, "Nominal", Set Values ({ "l", "m", "n"})));
cols = dt << 열 이름 가져 오기 (string);
If (Contains (cols, "Dummy"),
dt << 열 선택 ();
dt << 열 삭제 ());
스크립팅Re : 특정 문자열을 포함하는 열 선택 및 삭제추가하기 위해 ... 내가 이것을 묻는 이유는 예를 들어 "_Dummy"를 포함하는 50 개의 열과 같은 많은 열 이름이 있는지 알고 싶기 때문입니다. "dt << delete column (column ("A_Dummy "))"와 같은 알려진 열 삭제 명령을 사용하여 특정 열 이름. 이 명령을 사용해야하는 경우 모든 고유 한 열 이름의 50 배를 입력해야합니다.
Re : 특정 문자열을 포함하는 열 선택 및 삭제포함은 일치의 첫 번째 색인 만 제공합니다. 목록을 반복하여 삭제할 열이있는 목록을 생성하거나 반복하는 동안 삭제할 수 있습니다.
Names Default To Here( 1 );
dt = New Table( "Example",
Add Rows( 3 ),
New Column( "A_Dummy", Character, "Nominal", Set Values( {"xx", "yy", "zz"} ) ),
New Column( "B", Character, "Nominal", Set Values( {"a", "b", "c"} ) ),
New Column( "C_Dummy", Character, "Nominal", Set Values( {"l", "m", "n"} ) ));<BR />
cols = dt << get column names( string );
for(i = 1, i <= N Items(cols), i++,
If(Contains(cols[i],"Dummy"),
dt << Delete Columns(cols[i])
);
);Re : 특정 문자열을 포함하는 열 선택 및 삭제이것은 당신을 위해 작동하고 이해하기 쉬운 수정 된 버전입니다.
문자열이있는 위치를 보려면 열에 대해 루프가 필요합니다.
선택 및 삭제 사용이 올바르지 않습니다.
Names Default To Here( 1 );
dt = New Table( "Example",
Add Rows( 3 ),
New Column( "A_Dummy", Character, "Nominal", Set Values( {"xx", "yy", "zz"} ) ),
New Column( "B", Character, "Nominal", Set Values( {"a", "b", "c"} ) ),
New Column( "C_Dummy", Character, "Nominal", Set Values( {"l", "m", "n"} ) )
);
cols = dt << get column names( string );
delete_lst = {};
For( i = 1, i <= N Items( cols ), i++,
If( Contains( cols[i], "Dummy" ),
Insert Into( delete_lst, cols[i] )
)
);
dt << Delete Columns( delete_lst );