Ich habe eine 2 Datenrahmen One-Score-Karte für die Bewertung von Schüler Noten Zweiten One-Student-Datensatz.Referenzieren einer Liste von Listen
Ich möchte Scorekarte auf einen bestimmten Student-Datensatz anwenden, um die Punkte zu berechnen und sie zu aggregieren. Ich versuche, eine generische Funktion devlop, die die Zählkarte und gilt auf jedem studentmarks Dataset
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
Funktionen definieren Bins Nehmen, um die Behälter über Spalten
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
Ich versuche, nimmt zu wandle den cellvalue in einen String um und er wird als Objekt erkannt. Jede Art zu lösen
Wie kann ich die Funktion allgemeiner machen?
Dank Pari