我希望能够得到关于使用pandas进行2列数据重塑的帮助。
我有一个csv文件(test.csv)
Axe Break Chaplin
1 52.1 ty
2 32.2 ty
3 44.6 ty
3 99.1 ty
5 122.3 ty
3 43.2 ty
7 79.4 ty
8 45.5 ty
9 56.3 ty
0 15.4 ty
1 35.7 ty
2 23.7 ty
3 66.7 ty
4 33.8 ty
1 12.9 ty
7 34.8 ty
1 21.6 ty
3 43.7 ty
6 44.2 ty
9 55.8 ty
4 22.4 ty
3 55.6 ty
2 11.4 ty
5 54.6 ty
6 19.7 ty
7 23.5 ty
1 12.8 ty
6 34.6 ty
8 69.6 ty
9 55.8 ty
期望的结果是这样的。
[[ 52.1 32.2 44.6 99.1 122.3]
[ 43.2 79.4 45.5 56.3 15.4]]
[[ 35.7 23.7 66.7 33.8 12.9]
[ 34.8 21.6 43.7 44.2 55.8]]
[[ 22.4 55.6 11.4 54.6 19.7]
[ 23.5 12.8 34.6 69.6 55.8]]
ty
我已经尝试过,并附上样本脚本。
import pandas as pd
import numpy as np
df = pd.read_csv("test2.csv")
def arrange1():
start = 0
for i in range(0, len(df.index)):
if (i + 1)%10 == 0:
result = df['Break'].iloc[start:i+1].reshape(2,5)
start = i + 1
print result
print "ty"
arrange1()
虽然这个脚本提供了我想要的结果,但我感觉可以用Pandas另一种方式来完成。
我希望不必要做以下这个操作:
print "ty"
感谢您的帮助。
【更新】
非常抱歉没有说明我的意思。我想得到像我展示的结果,以“ty”结尾,但我不想写。
print "ty"
在脚本中。换句话说,
print result
将打印此输出
[[ 52.1 32.2 44.6 99.1 122.3]
[ 43.2 79.4 45.5 56.3 15.4]]
[[ 35.7 23.7 66.7 33.8 12.9]
[ 34.8 21.6 43.7 44.2 55.8]]
[[ 22.4 55.6 11.4 54.6 19.7]
[ 23.5 12.8 34.6 69.6 55.8]]
ty