한 열에서 선택한 셀을 복사하여 다른 열의 선택한 셀에 붙여넣기안녕하세요 JSL 초보입니다. 한 열에 있는 셀 블록을 새로 생성된 다른 열의 다른 위치로 이동하는 방법을 배워야 합니다.이 경우 이 새 열 위에 있습니다.
특히 별도의 PRE/POST 열에서 PRE로 표시된 THK 열의 셀 집합을 선택하고 THK PRE로 표시된 새 열 위에 붙여넣어야 합니다. Split Column 기능과 다소 유사하지만 일부 결함으로 인해 THK 열의 일부 셀에 있는 데이터가 누락된 경우 새로 생성된 열에서 데이터가 때때로 뒤죽박죽으로 나타나는 것을 발견했기 때문에 Split Column 기능을 사용하고 싶지 않습니다.
포럼의 몇 가지 예에서 아래 코드를 함께 넣었지만 새로 생성된 THK PRE 열에 아무 값도 붙여넣지 않습니다.도와주세요!미리 감사드립니다.
필요한 것은 다음과 같습니다.
시작 데이터 테이블
THK 전/후
9.5 포스트
9.8 포스트
10.1 포스트
11.0 사전
11.4 사전
10.9 사전
다음은 이 작업 후의 데이터 테이블 모양이 필요한 것입니다.
THK | 사전/사후 | THK 프리
9.5 포스트 11.0
9.8 포스트 11.4
10.1 포스트 10.9
11.0 사전
11.4 사전
10.9 사전
아래 스크립트는 새로 생성된 열에 값을 붙여넣지 않고 열이 비어 있습니다.
// Pick the source data table
dt=Open("Data Table");
//Create New THK PRE column
dt << New Column( "THK PRE", Numeric, "Continuous");
Wait(1);
// Select PRE values from THK column
vals = Column(dt, "THK") << Get Rows Where(:Name("PRE/POST") == "PRE");
// Put these in the new column THK PRE
Column(dt, "THK PRE") << Set Values(vals)
도와주세요! 미리 감사드립니다.나는 점프 16.0.0을 사용합니다
@jthi
데이터 혼합 및 정리Re: 한 열에서 선택한 셀을 복사하여 다른 열의 선택한 셀에 붙여넣기안녕하세요 Txnelson, 빠른 응답에 감사드립니다!매력처럼 작동합니다!나는 꽤 가까웠지만 구문을 이해할 수 없었습니다.
Re: 한 열에서 선택한 셀을 복사하여 다른 열의 선택한 셀에 붙여넣기다음은 원하는 것을 처리하는 주석이 추가된 스크립트 재작업입니다.
Names Default To Here( 1 );
// Pick the source data table
//dt=Open("Data Table");
dt = New Table( "Example",
Add Rows( 6 ),
New Column( "THK",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [9.5, 9.8, 10.1, 11, 11.4, 10.9] )
),
New Column( "PRE/POST",
Character,
"Nominal",
Set Values( {"POST", "POST", "POST", "PRE", "PRE", "PRE"} )
)
);
//Create New THK PRE column
dt << New Column( "THK PRE", Numeric, "Continuous" );
Wait( 0 );
// Find the rows PRE values from THK column
// and copy those values from the found rows
// to the vals matrix
vals = :THK[dt << get rows Where( :Name( "PRE/POST" ) == "PRE" )];
// Put these in the new column THK PRE
dt:THK PRE << Set Values( vals );Re: 한 열에서 선택한 셀을 복사하여 다른 열의 선택한 셀에 붙여 넣기선택한 데이터를 동일한 행 위치의 새 열에 붙여넣는 방법이 있습니까? 아니면 선택에 따라 새 열의 값을 설정하시겠습니까? 이 같은?

Re: 한 열에서 선택한 셀을 복사하여 다른 열의 선택한 셀에 붙여 넣기원하는 작업을 수행하는 몇 가지 방법은 다음과 같습니다.
Names Default To Here( 1 );
// Pick the source data table
//dt=Open("Data Table");
dt = New Table( "Example",
Add Rows( 6 ),
New Column( "THK",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [9.5, 9.8, 10.1, 11, 11.4, 10.9] )
),
New Column( "PRE/POST",
Character,
"Nominal",
Set Values( {"POST", "POST", "POST", "PRE", "PRE", "PRE"} )
)
);
//Create New THK PRE column
dt << New Column( "THK PRE1",
Numeric,
"Continuous",
formula( If( :"PRE/POST"n == "PRE", :THK, . ) )
);
dt << New Column( "THK PRE2", Numeric, "Continuous" );
For Each Row(
If( :"PRE/POST"n == "PRE",
:THK PRE2 = :THK,
:THK PRE2 = .
)
);
두 번째 예에서처럼 THK PRE 값을 5로 설정하려면 결과 값을 :THK에서 5로 변경하세요.
Re: 한 열에서 선택한 셀을 복사하여 다른 열의 선택한 셀에 붙여 넣기답변 감사드립니다. 제가 모르는 '붙여넣기' 스크립트 기능이 있었으면 좋겠습니다. 열에 이미 다른 값이 포함되어 있는 경우 제안한 대로 각 행을 반복해야 할 것 같습니다.
Re: 한 열에서 선택한 셀을 복사하여 다른 열의 선택한 셀에 붙여 넣기복사/붙여넣기에 조금 더 가깝습니다. 모든 값을 한 번에 가져오고 일괄 쓸 수 있습니다.
데이터 테이블 첨자
Names Default To Here( 1 );
dt = New Table( "Example",
Add Rows( 100 ),
New Column( "input",
Set each Value( random uniform () )
),
New Column( "variant",
Character,
set each value({"A","B"}[random integer(1,2)])
)
);
dt << New Column( "out");
rows= Where(:variant == "A");
vals = dt[rows,"input"];
dt[rows,"out"]=vals;
이는 다음과 유사합니다.
dt:THK PRE << Set Values( vals );
차이점: 데이터 테이블 인덱싱을 통해 작성할 행을 정확하게 지정할 수 있습니다.
값 설정은 행 1에서 시작하여 배열에 있는 값만큼의 행을 채웁니다.