Pandas에서 길이가 같지 않은 배열이 포함된 사전을 처리하려면 맞춤형 접근 방식이 필요합니다. 각 열이 사전 내의 배열을 나타내는 DataFrame을 생성하려고 하면 "배열은 모두 동일한 길이여야 합니다."라는 ValueError가 발생할 수 있습니다.
이를 방지하려면 문제에서는 다양한 길이의 배열을 보유할 수 있는 Pandas의 Series 개체를 활용합니다. 각 사전 값을 시리즈로 변환하면 길이에 관계없이 배열을 효과적으로 저장할 수 있습니다. 다음 코드 조각은 이 접근 방식을 보여줍니다.
import pandas as pd import numpy as np # Sample data generated via a reproducible seed np.random.seed(2023) data = {k: np.random.randn(v) for k, v in zip("ABCDEF", [10, 12, 15, 17, 20, 23])} # Convert dictionary values to Series objects series_dict = {k: pd.Series(v) for k, v in data.items()} # Create DataFrame using these Series objects df = pd.DataFrame(series_dict)
다양한 길이의 배열로 작업할 때 더 짧은 배열이 나머지 셀을 채울 수 없는 누락된 값이 발생하는 것이 일반적입니다. 기본적으로 Pandas는 이러한 공백을 NaN(숫자가 아님) 값으로 채웁니다. 이 동작은 원본 데이터를 보존하는 동시에 분석을 위한 일관된 구조를 제공합니다.
원하는 경우 DataFrame( ) 생성자. 예를 들어 누락된 값을 NaN 대신 0으로 바꾸려면 아래와 같이missing_values=0을 지정합니다.
df = pd.DataFrame(series_dict, missing_values=0)
다음 출력은 접근 방식을 사용하여 생성된 DataFrame을 보여줍니다. 위에 설명된 내용은 다음과 같습니다.
print(df)
A B C D E F 0 0.711674 -1.076522 -1.502178 -1.519748 0.340619 0.051132 1 -0.324485 -0.325682 -1.379593 2.097329 -1.253501 -0.238061 2 -1.001871 -1.035498 -0.204455 0.892562 0.370788 -0.208009 3 0.236251 -0.426320 0.642125 1.596488 0.455254 0.401304 4 -0.102160 -1.029361 -0.181176 -0.638762 -2.283720 0.183169 ... ... ... ... ... ... ... 18 NaN NaN NaN NaN NaN NaN 19 NaN NaN NaN NaN NaN NaN 20 NaN NaN NaN NaN NaN NaN 21 NaN NaN NaN NaN NaN NaN 22 NaN NaN NaN NaN NaN NaN 23 rows × 6 columns
관찰할 수 있듯이 배열이 짧을수록 해당 항목에 NaN 값이 표시됩니다. 셀을 사용하여 원하는 표 형식을 유지하면서 데이터를 포괄적으로 표현합니다.
위 내용은 배열 길이가 고르지 않은 사전에서 Pandas DataFrame을 구성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!