3
私は2データフレームを持っています 生徒マークを記入するための1スコアカード 2番目の1生徒データセット。リストのリストからリストを参照する
スコアを計算して集計するために、与えられた生徒データセットにスコアカードを適用したいと考えています。私は スコアカードを取り、任意のstudentmarksデータセットに適用される一般的な機能をdevlopしようとしている
import pandas as pd
score_card_data = {
'subject_id': ['MATHS', 'SCIENCE', 'ARTS'],
'bin_list': [[0,25,50,75,100], [0,20,40,60,80,100], [0,20,40,60,80,100]],
'bin_value': [[1,2,3,4], [1,2,3,4,5], [3,4,5,6,7] ]}
score_card_data = pd.DataFrame(score_card_data, columns = ['subject_id', 'bin_list', 'bin_value'])
score_card_data
student_scores = {
'STUDENT_ID': ['S1', 'S2', 'S3','S4','S5'],
'MATH_MARKS': [10,15,25,65,75],
'SCIENCE_MARKS': [8,15,20,35,85],
'ARTS_MARKS':[55,90,95,88,99]}
student_scores = pd.DataFrame(student_scores, columns = ['STUDENT_ID', 'MATH_MARKS', 'SCIENCE_MARKS','ARTS_MARKS'])
student_scores
ビンを定義する列の上に私がしようとしている
bins = list(score_card_data.loc[score_card_data['subject_id'] == 'MATHS', 'bin_list'])
student_scores['MATH_SCORE'] = pd.cut(student_scores['MATH_MARKS'],bins, labels='MATHS_MARKS')
Error:ValueError: object too deep for desired array
をビンを適用
機能セルの値を文字列に変換すると、オブジェクトとして検出されます。解決する方法
どのように機能をより一般的にすることができますか?
おかげ 巴里