Python np.savetxt格式-如何消除“,”和“(”?
谢谢你对我最后一个问题的帮助 我还有一个很基本的问题: 使用以下代码:Python np.savetxt格式-如何消除“,”和“(”?,python,numpy,Python,Numpy,谢谢你对我最后一个问题的帮助 我还有一个很基本的问题: 使用以下代码: import numpy as np data = np.loadtxt('coord.xyz',dtype={'names':('id', 'type','x','y','z'), 'formats': ('i4','i4','f4','f4','f4')}) f_h = file('sorted1.dat','a') m = sorted
import numpy as np
data = np.loadtxt('coord.xyz',dtype={'names':('id', 'type','x','y','z'),
'formats': ('i4','i4','f4','f4','f4')})
f_h = file('sorted1.dat','a')
m = sorted(data, key=lambda data_entry: int(data_entry[0]))
np.savetxt(f_h, m, fmt='%s', delimiter=' ')
f_h.close()
有可能对数据进行正确排序
文件“coord.xyz”并将其保存在文件“sorted1.dat”中。
数据是这样的
1,1,-0.8835089802742004,1.1118659973144531,2.8823349475860596
2,2,-0.5829229950904846,1.2082430124282837,1.566588044166565
3,3,-0.4945560097694397,0.02859400026500225,0.7631300091743469
4,1,-0.7490050196647644,-1.2098779678344727,1.3580570200947266
5,4,-0.30354899168014526,0.2422530550460815,-0.81024402379989962
6,1,-1.0057859420776367,-1.2784860134124756,2.719391107559204
7,5,-1.128898024559021,-0.0881239953603745,3.508042097091675
8,1,-1.243878960609436,-0.2172799539556604,5.247914791107178
9,1,-1.3797849416732788,0.1959020048379898,-1.197553038597107
10,1,-0.25306999683380127,-0.2892940044403076,5.424662113189697
问题是要消除'sorted1.dat'中的'、's和
有人可以给我一个简单的解决方案吗?只是不要指定格式,或者为每列指定正确的格式。从以下开始:
import numpy as np
data = np.loadtxt('coord.xyz', dtype={'names':('id', 'type','x','y','z'),
'formats': ('i4','i4','f4','f4','f4')})
m = data.copy()
m.sort()
with open('sorted1.dat', 'a') as f_h:
np.savetxt(f_h, m, delimiter=' ')
要使整数正确显示,使浮点数使用简单的十进制表示法,请使用一个格式序列fmt:
np.savetxt(f_h, m, delimiter=' ', fmt=['%i']*2 + ['%f']*3)
@ USer3147207很乐意帮忙。考虑问题是否解决了。