我有一个15k列的数据框。这些列将重新排序。这样的。这些列的排列方式如下:
1)第一列应为第三列 2)第二列应具有第一列的值 3)第三列的值应为第一
现有列
0 1 2 3 4 5 6 7 8 ..... 14998 14999 15000
所需列
2 0 1 5 3 4 8 6 7 .... 15000 14998 14999
答案 0 :(得分:4)
IIUC,甚至更简单的解决方案:
import itertools
k = [2, -1, -1] * (len(x)//3)
indexes = np.arange(15000) + np.array(k)
df.iloc[:, indexes]
答案 1 :(得分:0)
您需要的只是正则表达式!
teststring=" ".join(str(i) for i in range(0,15000))
replacedstring=re.sub(r'((\d+) (\d+) (\d+))',r'\4 \2 \3',teststring)
replacedstring.split(" ")