programing

팬더 데이터 프레임에서 없음을 NaN으로 바꿉니다.

newnotes 2023. 9. 7. 22:02
반응형

팬더 데이터 프레임에서 없음을 NaN으로 바꿉니다.

자리가 있습니다.x:

        website
0   http://www.google.com/
1   http://www.yahoo.com
2   None

python none을 panda NaN으로 교체하고 싶습니다.노력했습니다.

x.replace(to_replace=None, value=np.nan)

하지만 난..

TypeError: 'regex' must be a string or a compiled regular expression or a list or dict of strings or regular expressions, you passed a 'bool'

어떻게 해야 할까요?

Python 개체를 대체할 또는 를 사용할 수 있습니다.None, 실이 아닌'None'.

import pandas as pd
import numpy as np

데이터 프레임의 경우:

df = df.fillna(value=np.nan)

열 또는 영상 시리즈의 경우:

df.mycol.fillna(value=np.nan, inplace=True)

다른 옵션은 다음과 같습니다.

df.replace(to_replace=[None], value=np.nan, inplace=True)

다음 행이 바뀝니다.None와 함께NaN:

df['column'].replace('None', np.nan, inplace=True)

df.replace([None], np.nan, inplace=True)를 사용하면 데이터가 누락된 모든 날짜 시간 객체가 개체 유형으로 변경됩니다.따라서 데이터의 크기에 따라 부담이 될 수 있는 날짜로 변경하지 않는 한 쿼리가 깨질 수 있습니다.

이 메서드를 사용하려면 먼저 df에서 object dtype 필드를 식별한 다음 None을 바꿀 수 있습니다.

obj_columns = list(df.select_dtypes(include=['object']).columns.values)
df[obj_columns] = df[obj_columns].replace([None], np.nan)

이 솔루션은 모든 열의 값을 쉽게 바꿀 수 있기 때문에 간단합니다.
당신은 a를 사용할 수 있습니다.dict:

import pandas as pd
import numpy as np

df = pd.DataFrame([[None, None], [None, None]])
print(df)
      0     1
0  None  None
1  None  None

# replacing
df = df.replace({None: np.nan})
print(df)
    0   1
0 NaN NaN
1 NaN NaN

오래된 질문이지만 여러 열에 대한 해결 방법은 다음과 같습니다.

values = {'col_A': 0, 'col_B': 0, 'col_C': 0, 'col_D': 0}
df.fillna(value=values, inplace=True)

자세한 옵션은 문서를 확인합니다.

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.fillna.html

DataFrame['Col_name'].replace("None", np.nan, inplace=True)

언급URL : https://stackoverflow.com/questions/23743460/replace-none-with-nan-in-pandas-dataframe

반응형