Προσπαθώ να αφαιρέσω 1 από όλες τις στήλες στις σειρές ενός DataFrame
που έχουν αντίστοιχο ευρετήριο σε list
.
Για παράδειγμα, αν έχω ένα DataFrame όπως αυτό:
df = pd.DataFrame({'AMOS Admin': [1,1,0,0,2,2], 'MX Programs': [0,0,1,1,0,0], 'Material Management': [2,2,2,2,1,1]})
print(df)
AMOS Admin MX Programs Material Management
0 1 0 2
1 1 0 2
2 0 1 2
3 0 1 2
4 2 0 1
5 2 0 1
Θέλω να αφαιρέσω το 1 από όλες τις στήλες όπου το ευρετήριο είναι στο [2, 3] έτσι ώστε το τελικό αποτέλεσμα να είναι:
AMOS Admin MX Programs Material Management
0 1 0 2
1 1 0 2
2 -1 0 1
3 -1 0 1
4 2 0 1
5 2 0 1
Αφού δεν βρήκα τρόπο να το κάνω αυτό, δημιούργησα μια Σειρά:
sr = pd.Series([1,1], index=['2', '3'])
print(sr)
2 1
3 1
dtype: int64
Ωστόσο, εφαρμόζοντας τη δευτερεύουσα μέθοδο σύμφωνα με αυτήν την ερώτηση οδηγεί σε ένα DataFrame με όλα τα NaN και νέες σειρές στο κάτω μέρος.
AMOS Admin MX Programs Material Management
0 NaN NaN NaN
1 NaN NaN NaN
2 NaN NaN NaN
3 NaN NaN NaN
4 NaN NaN NaN
5 NaN NaN NaN
2 NaN NaN NaN
3 NaN NaN NaN
Οποιαδήποτε βοήθεια θα ήταν πολύτιμη.
Ευχαριστώ, Χουάν