팬더 재색인

Paendeo Jaesaeg In



'pandas'에서는 많은 정보를 DataFrame이라고도 하는 표 형식으로 저장할 수 있습니다. 'pandas'는 DataFrame을 구성하기 위한 'DataFrame()' 메서드로 우리를 용이하게 합니다. DataFrame에는 인덱스가 포함되어 있으며 'pandas' 기능을 사용하여 DataFrame의 인덱스를 변경할 수도 있습니다. DataFrame을 다시 인덱싱하기 위해 사용하는 메서드는 'reindex()' 메서드입니다. 이 방법은 행의 인덱스 값과 열의 인덱스 값을 변경하는 데 도움이 됩니다. 이 방법을 이용하여 DataFrame의 기본 인덱스를 변경할 수 있으며, DataFrame을 생성할 때 설정한 인덱스도 변경할 수 있습니다. 이 자습서의 'pandas' 예제에서 'reindex()' 메서드를 사용하고 여기에서 이 개념에 대해 자세히 설명합니다.'

예 # 01

'Spyder' 도구는 이 튜토리얼에서 'pandas' 코드를 개발하는 데 도움이 되며 'pandas' 기능을 가져오는 데 도움이 되는 'import' 키워드로 코드를 시작합니다. '가져오기'를 입력한 후 'pandas as pd'를 배치합니다. 그런 다음 'pd.DataFrame()'을 입력하여 DataFrame을 만듭니다. 'DataFrame()'이 'pandas'의 메서드이기 때문에 이 'pd'를 여기에 작성합니다. 'value_df'는 DataFrame이 저장되는 변수의 이름입니다. 열 이름인 'RandomName'을 추가하고 'RandomName'에는 'Thomas, Oscar, Lilly, Rowan, John, Bromley, Peter, Alexander, and Samuel'이 포함됩니다.







그런 다음 'Value_1'이 있으며 '16, 29, 24, 35, 44, 50, 69, 74 및 88'을 삽입했습니다. 그런 다음 'Value_2'가 오고 '25, 38, 42, 56, 54, 65, 78, 89 및 99'가 추가되었습니다. 이제 'Value_3'이 다음에 오고 '36, 48, 52, 69, 74, 75, 87, 91, 69'를 넣습니다. 'Value_4' 열이 이 뒤에 있으며 '52, 64, 72, 88, 82, 95, 97, 21, 39'를 삽입했습니다. 마지막 열은 여기에서 'Value_5' 열이고 이 열에서 추가한 값은 '66, 78, 82, 99, 34, 45, 57, 61, 89'입니다. 그런 다음 'Values_df'가 추가된 'print()' 함수를 사용합니다. 터미널에 인쇄됩니다.




'Shift+Enter'를 누르면 'Spyder' 앱에서 코드 결과를 쉽게 얻을 수 있습니다. 여기에서 이 코드는 기본 인덱스가 있는 DataFrame을 반환합니다. 이제 'pandas'에서 이 DataFrame을 다시 인덱싱하기 위해 'reindex()' 메서드를 적용합니다.




여기서 'reindex()' 함수는 행의 인덱스 값을 다시 인덱싱하는 데 사용됩니다. 위의 DataFrame에서 행의 기본 인덱스 값이 표시되는 것을 볼 수 있으며, 이제 해당 행 인덱스를 다시 인덱싱하기 위해 'reindex()' 메서드를 적용하고 있습니다. DataFrame의 이름을 배치한 다음 위의 DataFrame에 추가하려는 인덱스 값을 배치하는 'reindex()' 메서드를 배치합니다. “reindex()” 함수에 “ind_A, ind_B, ind_C, ind_D, ind_E, ind_F, ind_G, ind_H, ind_I”를 넣었습니다. 따라서 이 코드를 실행할 때 이 행의 인덱스가 DataFrame에서 업데이트됩니다.






이 결과에는 행의 인덱스 값이 표시되며 여기에는 DataFrame 값이 표시되지 않고 'NaN' 값이 표시됨을 알 수 있습니다. 새로운 인덱스 값이 DataFrame의 이전 인덱스 값과 일치하지 않기 때문입니다. 새 인덱스와 이전 인덱스가 일치하지 않으면 'Nan'이 표시됩니다. 이 'NaN' 값은 인덱스를 변경할 때 기본적으로 표시되며 이전 인덱스와 일치하지 않습니다.



예 # 02

이제 이전 예제 1에서 만든 'Value_df'의 열 인덱스 값을 변경합니다. 'Value_df'를 인쇄한 후 '열' 변수를 넣고 여기에 일부 값을 추가합니다. 'a_1, b_1, c_1, d_1 및 e_1'을 추가합니다. 이제 이 값을 열의 인덱스로 조정하려고 하므로 'reindex()' 메서드를 사용하고 새 열 인덱스 값이 저장되는 변수 '열'의 이름을 배치하고 또한 'axis'를 'columns'로 설정하여 열 축 인덱스를 업데이트합니다. 'reindex()' 메서드를 'print()'에 넣었으므로 터미널에서도 렌더링됩니다.


'reindex()' 메서드를 사용하였기 때문에 첫 번째 DataFrame에 있던 열 인덱스 값이 업데이트되고 업데이트된 DataFrame에 새 값이 추가됩니다. 열의 두 인덱스 값이 모두 다르기 때문에 DataFrame의 모든 값이 'NaN'으로 변환된다는 점도 알 수 있습니다.

예 # 03

이 코드의 'Programming_data'에는 'JavaScript, CSS, Web Engineering, OOP, C#, AI, Java 및 JavaScript'가 추가된 'P_Languages'가 포함되어 있습니다. 그런 다음 '4_hrs, 2_hrs, 3_hrs, 7_hrs, 6_hrs, 5_hrs, 8_hrs 및 6_hrs'를 배치하는 'Hours'가 있습니다. 이후에 “P_Code”를 입력하고 “11523, 12423, 12321, 11456, 11454, 12267, 13106, 14123”을 입력합니다. 'p_index' 변수를 추가하고 'Pro_A, Pro_B, Pro_C, Pro_D, Pro_E, Pro_F, Pro_G, Pro_H'를 넣습니다.

이 값은 행의 인덱스 값으로 사용됩니다. 'Programming_df' DataFrame에서 'Programming_data'를 변경합니다. 또한 'index' 메소드를 사용하여 이 DataFrame에 'p_index'를 추가합니다. 'Programming_df'를 넣은 다음 'index' 메서드를 넣고 'p_index'를 여기에 할당합니다. 이제 위의 인덱스 값이 DataFrame에 행 인덱스 값으로 추가됩니다. 'Programming_df'도 인쇄합니다.

그런 다음 'new_index' 변수에 'P_1, P_2, P_3, P_4, P_5, P_6, P_7, P_8'이라는 새로운 인덱스 값을 추가합니다. 행의 인덱스 값을 업데이트하려면 'reindex()' 메서드를 사용하고 'new_index'를 이 함수의 매개변수로 입력하고 업데이트된 DataFrame을 'newProgramming_df'에 저장하고 'newProgramming_df'를 ' print()”를 표시합니다.


인덱스 값이 업데이트되고 생성한 DataFrame을 다시 인덱싱했다고 말할 수도 있습니다. 두 인덱스 값이 다르기 때문에 DataFrame의 모든 값도 'NaN'으로 변환됩니다.

예 # 04

우리는 현재 예 3에서 이전에 개발한 열의 'Programming_df' 인덱스 값을 변경하고 있습니다. '열' 변수를 배치하고 여기에 새 값을 삽입합니다. 'P_Code, P_Languages, Hours, and New'가 'column' 변수에 추가됩니다. 그런 다음 'column' 변수를 설정하는 'reindex()' 메서드를 다시 사용합니다. 이 메서드는 이전 열 인덱스 값을 업데이트하고 이러한 새 열 인덱스 값을 DataFrame에 추가합니다.

여기에서 'column'에 추가한 새 값은 위의 DataFrame에 추가한 값과 동일하지만 순서가 다르기 때문에 열의 순서를 변경하고 모든 열을 조정합니다. '열' 변수에 언급되어 있습니다. 또한 위의 DataFrame에 없는 인덱스 값을 하나 더 추가합니다. 여기서 'New'이므로 이 열에 'NaN' 값이 표시됩니다.


여기에서 열의 순서가 변경되고 모든 값은 원래 DataFrame의 열에 있는 그대로 나타나고 업데이트된 DataFrame의 'New' 열에는 원래 DataFrame에 없기 때문에 모든 'NaN' 값이 포함됩니다.

결론

'pandas reindex' 개념을 자세히 이해하는 데 도움이 되는 이 자습서를 제공했습니다. DataFrame의 열과 행의 인덱스 값을 다시 인덱싱하는 방법에 대해 논의했습니다. 이를 위해 'pandas'의 'reindex()' 함수를 활용한다고 설명했습니다. DataFrame 행의 인덱스 값과 DataFrame의 열 인덱스 인덱스 값을 변경하는 다양한 예를 수행했습니다. 우리는 이 튜토리얼에서 수행한 모든 코드의 결과를 렌더링하고 이에 대해 자세히 설명했습니다.