用python对部分数据分析,读取其中一列并且按照取值范围选取一部分?
110.72143961.25009174.0829177212.88662460.04.0829177311.44374540.02.0411525410.00.00....
1 1 0.7214396 1.2500917 4.0829177
2 1 2.8866246 0.0 4.0829177
3 1 1.4437454 0.0 2.0411525
4 1 0.0 0.0 0.0
5 1 3.6089301 1.2500917 2.0411525
6 1 2.165185 1.2500917 0.0
7 1 0.0 0.0 4.5930529
8 1 2.165185 1.2500917 4.5930529
9 1 0.7214396 1.2500917 2.5518999
10 1 2.8866246 0.0 2.5518999
11 1 1.4437454 0.0 0.510135
12 1 3.6089301 1.2500917 0.510135
13 1 5.0518093 1.2500917 4.0829177
14 1 7.2169943 0.0 4.0829177
15 1 5.7741156 0.0 2.0411525
比如上面这些数据,我想把他们按行读取,然后再把每一行的第三个数按照1<x<3的方式选出来,在对其进行数学计算,该怎么办啊?
我用了下面的方法,读出来的是最后一行的数据。
f=open('yuanshi.data')
for line in f:
data=line.split()
print (data) 展开
2 1 2.8866246 0.0 4.0829177
3 1 1.4437454 0.0 2.0411525
4 1 0.0 0.0 0.0
5 1 3.6089301 1.2500917 2.0411525
6 1 2.165185 1.2500917 0.0
7 1 0.0 0.0 4.5930529
8 1 2.165185 1.2500917 4.5930529
9 1 0.7214396 1.2500917 2.5518999
10 1 2.8866246 0.0 2.5518999
11 1 1.4437454 0.0 0.510135
12 1 3.6089301 1.2500917 0.510135
13 1 5.0518093 1.2500917 4.0829177
14 1 7.2169943 0.0 4.0829177
15 1 5.7741156 0.0 2.0411525
比如上面这些数据,我想把他们按行读取,然后再把每一行的第三个数按照1<x<3的方式选出来,在对其进行数学计算,该怎么办啊?
我用了下面的方法,读出来的是最后一行的数据。
f=open('yuanshi.data')
for line in f:
data=line.split()
print (data) 展开
2个回答
展开全部
最快回答能够把数据都打印出来。已经满足要求了。
不过通常处理数据还希望把这些数据保存起来。如果方便进行矩阵操作的话,最好用numpy库。
import numpy as np
f=open('yuanshi.data')
data=[line.split() for line in f]
x=np.array(data,dtype='float')
idx = np.where((x[:,2]<3) & (x[:,2]>1))
print x[:,2][idx]
要想加5,直接x[:,2][idx]+5
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐于2018-02-27
展开全部
for line in f:
if 0<float(line.split()[2])<3:
data=float(line.split()[2])
print(data)
追问
如果我要再把选出来的数据都加上5,该怎么做呢
追答
data+=5
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询