가져올 두 개의 CSV 파일이 있습니다. 하나의 CSV에서 누락 된 가치가 있습니다. 다른 CSV와 결합해야합니다.한 목록에서 다른 목록으로 값 추가
첫 번째 목록이 salaries =
[['19249-12477', 'P', 'Chris', 'Chris Sale', 'Sale', '54.71', '7', '11800', '[email protected]', 'BOS', 'TAM', '', '', '', ''],
['19249-5481', 'P', 'Max', 'Max Scherzer', 'Scherzer', '48.29', '7', '11700', '[email protected]', 'WAS', 'PHI', '', '', '', ''],
['19249-6311', 'P', 'Madison', 'Madison Bumgarner', 'Bumgarner', '38.50', '4', '11000', '[email protected]', 'SFG', 'CIN', '', 'Shoulder', '', '']]
두 목록처럼이 stats =
[ ['0', 'Dallas', 'Keuchel,', 'HOU', '8', '8', '6', '0', '1.000', '1', '0', '7', '0', '58.2', '37', '12', '11', '6', '14', '50', '1.69'],
['1', 'Ervin', 'Santana,', 'MIN', '7', '7', '5', '1', '.833', '1', '1', '6', '0', '47.0', '21', '9', '9', '6', '16', '37', '1.72'],
['2', 'Jason', 'Vargas,', 'KC', '7', '7', '5', '1', '.833', '0', '0', '6', '0', '44.2', '33', '6', '5', '1', '8', '39', '1.01']]
처럼 두 번째 모습을 보인다는 서로 다른 길이 있습니다. 목록 2에서 salaries[i][1]
및 salaries[i][7]
을 가져와 목록 1과 결합해야합니다.
여기 캐치가 있습니다. 두 목록을 반복하여 이름이 일치하는지 확인해야합니다. 그렇지 않으면 잘못된 값과 잘못된 플레이어가 결합됩니다.
것은 여기 내 코드 지금까지
for name1, name2 in zip(salaries, stats):
if name1[2] == name2[1] and name1[4] == name2[2]:
stats.append(salaries[1][1])
for name1, name2 in zip(salaries, stats):
if name1[2] == name2[1] and name1[4] == name2[2]:
stats.append(salaries[1][7])
입니다하지만 실행할 때이 그것을 한 번 나에게 헤더 값 ['Position']
을주는 대신 전체 목록을 반복하고 값을 추가 추가합니다.
이 작업을 실행하면 stats
에 값을 추가해야합니다. 추가해야하는 특정 색인을 제공해야합니까?
개체를 재구성하는 것이 좋습니다. 예 : 당신은 "양쪽"이라고 말합니다. 그러나 나는 6 개의 목록을 보았고 그 중 4 개는 할당되지 않았다. – Kanak
둘 다 @Tnerual – tin
목록의 목록입니다. 목록을 그렇게 만드십시오. 단순히 입력 내용을 복사 할 수있는 경우 답변을 얻을 수있는 가능성을 극대화합니다. 혼수 상태가 누락되었습니다. – Kanak