带列表的python减法,不带第一个
我想减去这两个列表。但是,没有第一个(没有01621和0) 我该怎么办带列表的python减法,不带第一个,python,list,dataframe,arraylist,subtraction,Python,List,Dataframe,Arraylist,Subtraction,我想减去这两个列表。但是,没有第一个(没有01621和0) 我该怎么办 part1 = [0.16217332 0.31666873 0.51007364 0.66299792 0.83379235 1. ] part2 = [0. 0.26212295 0.42225925 0.61941848 0.81022938 1. ] 我想要减法[(0.31666873-0.26212295)(0.51007364-0.42225925)(0.662997
part1 = [0.16217332 0.31666873 0.51007364 0.66299792 0.83379235 1. ]
part2 = [0. 0.26212295 0.42225925 0.61941848 0.81022938 1. ]
我想要减法[(0.31666873-0.26212295)(0.51007364-0.42225925)(0.66299792-0.61941848)(0.83379235-0.81022938)(1-1)]
使用Python有很多方法可以解决这个问题,例如:
part1 = [0.16217332, 0.31666873, 0.51007364, 0.66299792, 0.83379235, 1.0 ]
part2 = [0.0, 0.26212295, 0.42225925, 0.61941848, 0.81022938, 1.0]
r = [part1[i] - part2[i] for i in range(1,len(part1)) ]
print(r)
下面是一个使用numpy的解决方案,它允许对两个数组进行矢量化减法:
part1 = [0.16217332, 0.31666873, 0.51007364, 0.66299792, 0.83379235, 1.0 ]
part2 = [0.0, 0.26212295, 0.42225925, 0.61941848, 0.81022938, 1.0]
p1 = np.asarray(part1[1:])
p2 = np.asarray(part2[1:])
result = list(p1-p2)
#[0.05454577999999999, 0.08781439000000002, 0.043579440000000025, 0.02356296999999996, 0.0]
你试过什么吗?到底是什么问题?您使用的是pandas.DataFrame吗?您的帖子使用dataframe标记,但不使用Pandas。使用列表理解和zip&enumeration。您还可以将列表转换为numpy数组,并以这种方式减去它们