मेरे पास कुल ३००० कॉलम के साथ एक डेटाफ्रेम है जिसमें पहले कॉलम को छोड़कर हेडर नाम संख्या के रूप में हैं जो एक स्ट्रिंग है। सभी समान मान वाले डुप्लीकेट कॉलम हैं। वर्तमान आदेश मैं है:

   First, 0, 1, 2, 3,....3000, 0, 1, 2, 3,....,3000, 0, 1, 2, 3,...,3000, 0, 1, 2, 3,....,3000

मैं चाहता हूं कि उन्हें निम्नानुसार क्रमबद्ध किया जाए:

 First, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3,....,3000, 3000, 3000, 3000

इन डुप्लिकेट कॉलम के लिए सभी मान समान हैं। मैंने अक्ष 1 पर df = df.sort_index() की कोशिश की और इसी तरह, df [सॉर्टेड (df.columns)] लेकिन वे अलग-अलग सॉर्टिंग ऑर्डर देते हैं और मुझे जो चाहिए वह नहीं।

कोई मदद ?

2
codeDB 13 नवम्बर 2020, 13:57

1 उत्तर

सबसे बढ़िया उत्तर

First को इंडेक्स में बदलें, अन्य सभी कॉलम को पूर्णांक में बदलें, सॉर्ट करें और अंतिम रूप से First को कॉलम में बदलें:

df = df.set_index('First').rename(columns=int).sort_index(axis=1).reset_index()
1
jezrael 13 नवम्बर 2020, 13:58