고급 데이터 조작 기법

Java에서 데이터 가져오기

Anthony Markham

VP Quant Developer

열 제거와 추가

  • .drop()으로 불필요한 열 삭제
  • .addColumns()로 사전 계산/범주 열 추가
    • 행 개수는 동일해야 함 ❗
// 특정 열 제거
Table cleaned = dataTable.drop("TempID", "Notes");

// 새 열 두 개 추가 StringColumn statusCol = StringColumn.create("Status", "Active", "Inactive", "Active"); IntColumn priorityCol = IntColumn.create("Priority", 1, 2, 3); Table enhanced = dataTable.addColumns(statusCol, priorityCol);
Java에서 데이터 가져오기

.dropWhere()로 행 필터링

  • 조건과 일치하는 행 제거
  • 필터 기준에 Selection 사용
// 선택 조건 생성
Selection outliers = dataTable.doubleColumn("Value")
    .isLessThan(lowerBound)
    .or(dataTable.doubleColumn("Value")
        .isGreaterThan(upperBound));

// 조건과 일치하는 행 제거 Table cleanedData = dataTable.dropWhere(outliers);
Java에서 데이터 가져오기

행 수 세기

  • .rowCount() - 테이블의 행 수 계산
// 행 수 비교
System.out.println("Original rows: " + dataTable.rowCount());
System.out.println("After dropping outliers: " + 
    cleanedData.rowCount());
Original rows: 100
After dropping outliers: 95
Java에서 데이터 가져오기

불리언 필터링

  • and, or, not 메서드 지원
// 복합 불리언 필터링
Selection techHighPaid = dataTable.stringColumn("Department")
    .isEqualTo("Technology")
    .and(dataTable.doubleColumn("Salary")
        .isGreaterThan(100000));

// 역선택(NOT) Selection nonTechOrLowPaid = techHighPaid.not();
Java에서 데이터 가져오기

.map()으로 변환

  • 함수를 적용해 열 값을 변환
  • 람다식을 지원하여 코드가 간결함
// 미리 정의한 함수로 전체 열 변환
StringColumn upperNames = dataTable.stringColumn("Name").map(s -> s.toUpperCase());
// 열 값 변환
DoubleColumn prices = dataTable.doubleColumn("Price");
DoubleColumn discounted = prices.map(price -> price * 0.9);

// 이름 지정 후 열 추가 discounted.setName("DiscountedPrice"); Table withDiscounts = dataTable.addColumns(discounted);
Java에서 데이터 가져오기

요약

  • .drop() - 테이블에서 열 제거
  • .dropWhere() - 조건과 일치하는 행 제거
  • .addColumns() - 새 열 추가
  • .map() - 열 값 변환
// 핵심 고급 조작 메서드
dataTable.drop("TemporaryID");              
dataTable.dropWhere(selection);             
dataTable.addColumns(newColumn);            
doubleCol.map(value -> value * 2);
Java에서 데이터 가져오기

연습해 봅시다!

Java에서 데이터 가져오기

Preparing Video For Download...