我有一个按特定顺序排列的166列和63k行的数据框。 我有166列和35k行的第二个数据框。 第二个数据帧中的166列与第一个数据帧的顺序不同。
如何强制第二个数据框与第一个数据框的列顺序对齐? (这166个列在两个数据框中的名称相同。)
在搜索解决方案时出现了一种方法:
df2 = df2[['col1','col2','col3','col4']]
但是有161列,这太麻烦了。
X_18 #dataframe 1
X_19 #dataframe 2
# I tried to re-order both on the same conditions using the following code:
X_18.columns.sort_values()
X_19.columns.sort_values()
我希望列名具有相同的顺序,但是在对两者都应用排序后比较两者时,似乎顺序不是字母顺序的。
示例:
DataFrame1-Index(['Example 1','Example 2','Example 3'
...
'Example 55','Example 23'],
dtype='object', length=161)
DataFrame2-Index(['Example 1','Example 2','Example 3'
...
'Example 45','Example 33'],
dtype='object', length=161)
答案 0 :(得分:0)
您可以使用其他方法。正如我想的那样,您希望具有自然排序的列'col9','col10','col11'等,您可以对每个数据框使用natsorted:
class MyWinController: NSWindowController {
override func windowDidLoad() {
super.windowDidLoad()
self.window?.isOpaque = false
self.window?.backgroundColor = .clear
}
}