<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />안녕 여러분,
아래 코드는 데이터 테이블을 생성한 다음 Summarize 명령에서 두 개의 목록을 생성합니다. 하나는 By 변수(date_list)에 대한 것이고 다른 하나는 Max 변수(data_list)에 대한 것입니다.date_list는 표준 List 명령을 사용하여 완전히 액세스할 수 있지만(하단의 코드 참조) data_list는 Is List(data_list)에 관한 한 목록이 아닙니다.또한 목록에 있는 항목 수를 계산할 수 없으며 data_list에서 특정 값의 위치를 표시할 수도 없습니다.이것이 목록의 정상적인 동작입니까, 아니면 목록에 대한 미묘한 부분이 누락된 것입니까?어떤 도움이라도 주시면 감사하겠습니다.감사해요
로그 지우기();
이름의 기본값은 여기에 있습니다(1);
dt1 = 새 테이블("테스트",
행 추가( 20 ),
새 열("날짜",
숫자,
마디 없는,
형식( "m/d/yh:m", 10 ),
입력 형식( "m/d/yh:m" ),
값 설정(
[1767245800, 1771173900, 1805155800, 1809197400, 1843086800, 1838161000, 1889049900, 1893293200,
1896320800, 1900281600, 1950766400, 1955499200, 1957751200, 1964247600, 1990396800, 1995976400,
2023788000, 2029549600, 2051488600, 2056959000]
)
),
새 열("데이터",
숫자,
마디 없는,
형식( "최고", 12 ),
값 설정( [34, 45, ., 56, 99, 67, 12, 78, 53, 89, 77, 90, ., 12, 73, 23, 12, 34, 6, 45] )
),
새 열( "연도", 숫자, 연속형, 형식( "최고", 12 ), 공식( 연도( :Date ) ), 잠금( 1 ) ),
새 열( "시간", 숫자, 연속형, 형식( "최고", 12 ), 공식( 시간( :Date ) ), 잠금( 1 ) )
);
잠깐( 2 );
// 매일 가장 높은 성장을 얻습니다.
요약( date_list = by( :Date ), data_list = Max( :Data ) );
목록(date_list);
N개 항목(date_list);
Show( Loc( 날짜_목록, "1961년 3월 15일 오전 12:10" ));
목록( data_list );
N개 항목( data_list );
표시( Loc( data_list, 45 ));
아, 평소처럼 악마는 디테일에 숨어 있군요.설명과 대안을 알려주셔서 감사합니다.이는 목록과 행렬의 차이점을 훨씬 더 잘 이해하는 데 도움이 되었습니다.
목록인 것은 summary의 by() 결과뿐입니다. 수치 출력은 일반적으로 행렬(즉, 벡터)입니다. 행렬 명령을 사용하거나 행렬을 목록으로 변환합니다.
다음 대안을 비교해 보세요.
매트릭스인가 ( data_list ) ;
N 행 ( data_list ) ;
표시( 위치 ( data_list == 45 )) ;
목록임 ( data_list = 목록으로 ( data_list ) ) ;
N개 품목 ( data_list ) ;
보여주다 ( 위치 ( data_list , 45 ) ) ;