내 질문에 대한 설명 :목록에 여러 유형이 있습니까?
데이터 마이닝 알고리즘을 구현하는 프로그램을 작성 중입니다. 이 프로그램에서 나는 생각해야 할 입력 데이터를 저장하려고합니다. 입력 데이터가 행과 열이있는 테이블이라고 상상해보십시오. 각 행은 스칼라 클래스 (해당 스칼라 클래스)의 인스턴스로 나타낼 것이다. 입력 데이터의 열은 서로 다른 유형 (정수, Double, String 등) 일 수 있으며 입력 데이터에 따라 어떤 유형이 변할 수 있습니다. Scala 클래스 인스턴스 내부에 행을 저장하는 방법이 필요합니다. 따라서 요소로 여러 유형을 보유 할 수있는 정렬 된 컬렉션 (특수 List와 같은)이 필요하며 런타임에 유형 만 결정될 수 있어야합니다. 어떻게해야합니까? 벡터 또는 목록에서는 모든 요소가 동일한 유형으로되어 있어야합니다. Tuple은 다른 유형을 가질 수 있습니다 (잘못 입력하지 않으면 런타임에 확인할 수 있음). 그러나 최대 22 개의 요소는 너무 적습니다.
보너스 (나는 너무 많은 지금 요구하고 있는지 확실하지 않습니다) : 나는 또한 행 '열을하고 싶은
- 는 이름과 이름으로 초과-수있다. 그러나이 문제는 두 목록을 사용하여 쉽게 해결할 수 있다고 생각합니다. (어쨌든, 나는이 어딘가에 대해서이 글을 읽었다. 그러나 나는 어디에서 잊어 버렸고, 이것이 더 우아하게 해결되었다고 생각한다.)
- "List"보다는 "Vector"가 임의로 접근하도록하는 것이 좋을지도 모른다.).
- 선형 대수 (행렬 곱셈 등) 기능이 유용 할 것입니다.
- 더 많은 보너스 : 행렬을 저장할 수 있다면.
내 질문의 올드 말씨 :
나는 우리가 스칼라 R에서 그것을 알고 같은 data.frame 같은 것을하고 싶은,하지만 난 단 하나 개의 행을 필요로하기 위하여려고하고있다 . 이 행은 클래스의 멤버가 될 것입니다. 이 구조의 이유는 각 행과 관련된 메서드를 데이터 자체에 가까이 있기를 원하기 때문입니다. 각 데이터 행은 또한 자체에 대한 메타 데이터가 있어야하고 다른 행이 다르게 조작되도록 함수를 제공 할 수 있습니다. 그러나 어떻게 든 클래스 내에서 행을 저장해야합니다. 목록이나 벡터가 마음에 듭니다. 그러나 모든 정수, 문자열 등만 허용됩니다. 그러나 data.frame에서 알 수 있듯이 다른 열 (벡터 또는 목록의 요소)은 다른 유형일 수 있습니다. 또한 열 이름별로 행 값에 액세스 할 수 있도록 각 열의 이름을 저장하려고합니다. 그것은 가장 작은 문제로 생각됩니다. 내가 의미하는 바가 분명하기를 바랍니다. 어떻게 구현할 수 있습니까?R에서
예를 들려 줄 수 있습니까? 나는 정말로 당신이하려고하는 것을 모른다. – wheaties
@ wheaties : 내 질문에 대한 답. 희망이 도움이됩니다. – Make42
"유형이 런타임에만 결정됩니다"는 의미는 무엇입니까? 유형은 컴파일 시간 유효성 검증을 위해 존재합니다. 그것이 유용하지 않기 때문에 런타임에 타입 정보를 얻는 것은 의미가 없습니다. 두 번 그렇게 지우니까. – HTNW