따라서 Spark Dataframe에서 알 수 있듯이 여러 열의 경우 아래 데이터 프레임 스냅 샷에 표시된 것과 동일한 이름을 가질 수 있습니다.
[
Row(a=107831, f=SparseVector(5, {0: 0.0, 1: 0.0, 2: 0.0, 3: 0.0, 4: 0.0}), a=107831, f=SparseVector(5, {0: 0.0, 1: 0.0, 2: 0.0, 3: 0.0, 4: 0.0})),
Row(a=107831, f=SparseVector(5, {0: 0.0, 1: 0.0, 2: 0.0, 3: 0.0, 4: 0.0}), a=125231, f=SparseVector(5, {0: 0.0, 1: 0.0, 2: 0.0047, 3: 0.0, 4: 0.0043})),
Row(a=107831, f=SparseVector(5, {0: 0.0, 1: 0.0, 2: 0.0, 3: 0.0, 4: 0.0}), a=145831, f=SparseVector(5, {0: 0.0, 1: 0.2356, 2: 0.0036, 3: 0.0, 4: 0.4132})),
Row(a=107831, f=SparseVector(5, {0: 0.0, 1: 0.0, 2: 0.0, 3: 0.0, 4: 0.0}), a=147031, f=SparseVector(5, {0: 0.0, 1: 0.0, 2: 0.0, 3: 0.0, 4: 0.0})),
Row(a=107831, f=SparseVector(5, {0: 0.0, 1: 0.0, 2: 0.0, 3: 0.0, 4: 0.0}), a=149231, f=SparseVector(5, {0: 0.0, 1: 0.0032, 2: 0.2451, 3: 0.0, 4: 0.0042}))
]
위의 결과는 데이터 프레임과 결합하여 생성되며 4
두 개의 a
및 f
.
문제는 내가 더 많은 계산을하려고 할 때이된다 a
열, 나는를 선택하는 방법을 찾을 수 없습니다 a
, 나는 시도했다 df[0]
및 df.select('a')
모두 오류 mesaage 아래 나를 돌아 :
AnalysisException: Reference 'a' is ambiguous, could be: a#1333L, a#1335L.
어쨌든 Spark API에 중복 된 이름과 열을 다시 구별 할 수있는 것이 있습니까? 아니면 열 이름을 변경할 수있는 방법이 있습니까?