在Python中从txt文件中提取数字行/列
我对Python相当陌生,遇到了一个小问题,但这似乎是一个非常困难的问题 我有一个txt文件,其中包含以下内容:在Python中从txt文件中提取数字行/列,python,arrays,list,numpy,extraction,Python,Arrays,List,Numpy,Extraction,我对Python相当陌生,遇到了一个小问题,但这似乎是一个非常困难的问题 我有一个txt文件,其中包含以下内容: -2 2.1 -0.365635756 0 2.4 0.347433737 2 2.5 0.263774619 4 3.5 -0.244930974 6 4.2 -0.004564913 我的目标是以某种方式在Python中从文件中提取单独的行/列,以便再次用作列表或数组,对此我是
-2 2.1 -0.365635756
0 2.4 0.347433737
2 2.5 0.263774619
4 3.5 -0.244930974
6 4.2 -0.004564913
我的目标是以某种方式在Python中从文件中提取单独的行/列,以便再次用作列表或数组,对此我是相当陌生的。例如,我如何使用第一列中的数据创建列表[-2,0,2,4,6]
我目前的工作中有以下代码:
import numpy as np
with open('Numbers.txt', 'r') as f:
fcontents = f.read()
print(fcontents)
x = np.array(fcontents)
这篇文章的目的是编写一个程序,使用数组计算项目说明中给出的不同变量。我没有使用numpy,但是如果你想分成列,你可以这样做
col1 = []
col2 = []
col3 = []
with open('Numbers.txt', 'r') as f:
for line in f:
first, second, third = line.split()
col1.append(first)
col2.append(second)
col3.append(third)
print(col1)
print(col2)
print(col3)
哪个输出
['-2', '0', '2', '4', '6']
['2.1', '2.4', '2.5', '3.5', '4.2']
['-0.365635756', '0.347433737', '0.263774619', '-0.244930974', '-0.004564913']
这可能是熊猫的工作:
参考资料:
您可以将数据作为numpy.array导入 然后,检索列/行就像索引/切片numpy.array一样简单 这将导致
[ 0. 2.4 0.34743374]
[ 2.1 2.4 2.5 3.5 4.2]
在文本文件的每一行中使用空格字符作为分隔符可能重复Yay!熊猫规则!但对于这种特殊的文件格式,我会使用
import numpy as np
data = np.genfromtxt('Numbers.txt', unpack=True).T
print(data[1,:])
print(data[:,1])
[ 0. 2.4 0.34743374]
[ 2.1 2.4 2.5 3.5 4.2]