object: 기본적인 연속형, 범주형 데이터가 아닌 데이터들을 표현 (대부분 string<문자열>인 경우가 많다)int: 정수형 데이터float: 실수형 데이터datetime: 날짜형 데이터category: 범주형 데이터Series.unique()
예시:
df['Gender'].unique()
# array(['M', 'F'], dtype=object)
np.unique(Series)
예시:
import numpy as np
np.unique(df['Gender'])
array(['M', 'F'], dtype=object)
*return_count 등의 parameter를 사용할 때 유용
inplacepandas.DataFrame의 형태를 변환시키는 함수에서 사용 가능한 파라미터:
sort_values()
sort_index()
rename()
set_index()
reset_index()
drop()
dropna()
fillna()
replace()
update()
pop()
df = df.sort_index()
df.sort_index(inplace=True)
위의 두 함수는 똑같이 작동한다. inplace를 입력하면 return으로 아무 값도 주지 않고 해당 DataFrame의 값이 바뀐다.
첫 번째 코드는 정렬된 DataFrame을 새로 만들어서 새로 할당하는 것이라, 효율성 측면에서 두 번째 코드보다 떨어진다. 데이터의 크기가 크다면 inplace를 활용하는 것이 좋다.
np.sort(array)[::-1]과 같이 인덱싱을 활용import numpy as np
np.sort(np.unique(apartment_df['year_of_completion']))
# 결과값:
# array([1961, 1962, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973,
# 1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984,
# 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995,
# 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
# 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017])
np.sort(np.unique(apartment_dff['year_of_completion']))
# 결과값:
# array([2017, 2016, 2015, 2014, 2013, 2012, 2011, 2010, 2009, 2008, 2007,
# 2006, 2005, 2004, 2003, 2002, 2001, 2000, 1999, 1998, 1997, 1996,
# 1995, 1994, 1993, 1992, 1991, 1990, 1989, 1988, 1987, 1986, 1985,
# 1984, 1983, 1982, 1981, 1980, 1979, 1978, 1977, 1976, 1975, 1974,
# 1973, 1972, 1971, 1970, 1969, 1968, 1967, 1966, 1965, 1962, 1961])