3개의 .csv를 열 수가 다른 하나의 파일로 병합합니다.

3개의 .csv를 열 수가 다른 하나의 파일로 병합합니다.

3개의 .csv 파일이 있고 이를 R 또는 Matlab에 있을 수 있는 하나의 .csv 파일로 병합하고 싶습니다.
파일은 다음과 같습니다:

1597 obs of 167 variables;
160 obs of 167 variables;
533 obs of 146 variables 

NaN의 추가 열을 추가하여 MatLab에서 수직 연결을 시도했지만 열을 올바른 위치에 정렬할 수 없습니다. R에서 병합 기능을 시도했지만 계속 아니요로 돌아옵니다. 운이 좋지 않은 열 문제가 발생했습니다.

도움을 주시면 감사하겠습니다!

여기에 이미지 설명을 입력하세요

답변1

밀러(https://github.com/johnkerl/miller), 예를 들어 다음 3개의 CSV 파일이 있는 경우

cat input01.csv
a,b
1,2

cat input02.csv
a,c
7,3

cat input03.csv
a,b,c
9,12,1

그리고 당신은 달리게 mlr --csv unsparsify input0*csv >output.csv됩니다.

+---+----+---+
| a | b  | c |
+---+----+---+
| 1 | 2  | - |
| 7 | -  | 3 |
| 9 | 12 | 1 |
+---+----+---+

예를 들어 다음 두 입력 파일을 사용합니다.

그리고 달리는 중

mlr --csv unsparsify input_0*.csv >output.csv

이 출력 CSV가 표시됩니다.

+------------------+-----------------+---------------+
| Plastic: Cleaner | Plastic: Drinks | Plastic: Caps |
+------------------+-----------------+---------------+
| -                | 7               | -             |
| 4                | 5               | -             |
| 5                | 3               | -             |
| 2                | -               | 8             |
+------------------+-----------------+---------------+

그런 다음 Miller를 설치하고 몇 가지 테스트를 수행하십시오.

관련 정보