[Python pandas] 리스트의 값을 기반으로 순열 조합 만들기

2019.10.06 18:54데이터/머신러닝


라이브러리 및 데이터 불러오기

# 라이브러리
import pandas as pd

# 데이터
mock_data = pd.read_csv('MOCK_DATA.csv')
mock_data.head(5)
  id ssn first_name last_name email gender ip_address city country car_make car_model
0 1 352-83-7834 Josselyn Commuzzo jcommuzzo0@shop-pro.jp Female NaN Aībak Afghanistan GMC Yukon XL 2500
1 2 129-55-2802 Aksel Cubbin acubbin1@rakuten.co.jp Male NaN Gaya Nigeria Cadillac CTS
2 3 421-78-0056 Marwin Vagg NaN Male NaN Huangjiakou China Chevrolet Tahoe
3 4 NaN Michele Freed NaN Male 95.30.236.76 Ferrol Spain Volvo NaN
4 5 821-40-7635 Skip Sallan ssallan4@nymag.com Male 200.83.222.220 Sheffield United Kingdom GMC Canyon
특정 칼럼의 값을 리스트로 만들기
  • 데이터와 관계는 없지만 예를 들어 1번부터 5번까지의 도시를 여행할 것이라고 가정합시다
five_data = mock_data.head(5)
city_list = five_data['city'].tolist()
city_list
['Aībak', 'Gaya', 'Huangjiakou', 'Ferrol', 'Sheffield']
리스트 기반으로 순열 조합 만들기
import itertools
permutations_list = list(itertools.permutations(city_list))
permutations_list[1:5]
[('Aībak', 'Gaya', 'Huangjiakou', 'Sheffield', 'Ferrol'),
 ('Aībak', 'Gaya', 'Ferrol', 'Huangjiakou', 'Sheffield'),
 ('Aībak', 'Gaya', 'Ferrol', 'Sheffield', 'Huangjiakou'),
 ('Aībak', 'Gaya', 'Sheffield', 'Huangjiakou', 'Ferrol')]