정리할 대규모 설문 조사 데이터 세트 (300 열, 30000 행)가 있고 열이 혼합되어 있습니다. pandas 및 numpy와 함께 Python을 사용하고 있습니다. 파이썬을 사용하는 학습자 바퀴 단계에 많이 있습니다.
진행하면서 Y / N 답변을 1 또는 0으로 변경합니다. 그러나 likert 척도 열의 경우 동일한 작업을 수행하는 데 위험이있을 수 있다는 점이 우려됩니다. 누구든지 지금은 데이터를 NaN으로 남겨 두는 것이 바람직한 지 여부에 대한 견해가 있습니까? 성별은 동일합니다. 남성용 열과 여성용 열이 따로 있으며 둘 다 예인 경우 1, 아니오 인 경우 NaN으로 채워집니다.
데이터 분석 / 차팅에 Python을 사용하려고합니다 (matplotlib 및 seaborn 가져 오기). 이것은 나에게 새로운 것이므로 지금 내가 변경하는 것이 나중에 의도하지 않은 결과를 초래할 수 있다고 생각합니다!
당신이 줄 수있는 모든 지침을 많이 주시면 감사하겠습니다.
미리 감사드립니다.
의미하는 0이 없으면 NA를 값 (편의상 0)으로 채우는 것이 좋습니다. 그것은 모두 귀하의 데이터에 달려 있습니다. 즉, 300 x 30k는 그렇게 크지 않습니다. CSV로 저장하고 IPython Notebook 에서 실험 해보세요 . Pandas는 아마도 1 초 이내에 읽을 수 있으므로 문제가 발생하면 다시로드하세요.
다음은 여러 열로 구성된 질문 세트를 숫자가있는 단일 열로 압축 할 수있는 간단한 코드입니다.
df = pd.DataFrame({
1: {'agree': 1},
2: {'disagree': 1},
3: {'whatevs': 1},
4: {'whatevs': 1}}).transpose()
df
question_sets = {
'set_1': ['disagree', 'whatevs', 'agree'], # define these lists from 1 to whatever
}
for setname, setcols in question_sets.items():
# plug the NaNs with 0
df[setcols].fillna(0)
# scale each column with 0 or 1 in the question set with an ascending value
for val, col in enumerate(setcols, start=1):
df[col] *= val
# create new column by summing all the question set columns
df[setname] = df[question_set_columns].sum(axis=1)
# delete all the old columns
df.drop(setcols, inplace=True, axis=1)
df
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다