我有一个NumPy值的数组.我想计算这些值中有多少是在x <100和x> 25的特定范围内.我已经读过有关计数器的信息,但它似乎只对特定值有效,而不是值范围.我搜索过,但没有找到任何关于我的具体问题.如果有人能指出我正确的文件,我会很感激.谢谢
我试过这个
X = array(X)
for X in range(25, 100):
print(X)
Run Code Online (Sandbox Code Playgroud)
但它只是给我25到99之间的数字.
编辑 我使用的数据是由另一个程序创建的.然后我使用脚本来读取数据并将其存储为列表.然后我拿起列表并使用array(r)将其转换为数组.
编辑
运行的结果
>>> a[0:10]
array(['29.63827346', '40.61488812', '25.48300065', '26.22910525',
'42.41172923', '20.15013315', '34.95323355', '13.03604098',
'29.71097606', '9.53222141'],
dtype='<U11')
Run Code Online (Sandbox Code Playgroud) 我正在尝试做一些很可能非常简单的事情.我想使用'np.savetxt'将三个数组保存为文件列当我尝试这个时
x = [1,2,3,4]
y = [5,6,7,8]
z = [9,10,11,12]
np.savetxt('myfile.txt', (x,y,z), fmt='%.18g', delimiter=' ', newline=os.linesep)
Run Code Online (Sandbox Code Playgroud)
数组保存如下
1 2 3 4
5 6 7 8
9 10 11 12
Run Code Online (Sandbox Code Playgroud)
但我所知道的是这个
1 5 9
2 6 10
3 7 11
4 8 12
Run Code Online (Sandbox Code Playgroud) 嗨,我从http://pypi.python.org/pypi/statsmodels#downloads下载了StatsModels源码, 然后我解压缩到
/usr/local/lib/python2.7/dist-packages
Run Code Online (Sandbox Code Playgroud)
并根据http://statsmodels.sourceforge.net/devel/install.html上的文档做到了这一点
sudo python setup.py install
Run Code Online (Sandbox Code Playgroud)
它已安装,但是当我尝试导入时
import statsmodels.api as sm
Run Code Online (Sandbox Code Playgroud)
我收到以下错误
Traceback (most recent call last):
File "/home/Astrophysics/Histogram_Fast.py", line 6, in <module>
import statsmodels.api as sm
ImportError: No module named statsmodels.api
Run Code Online (Sandbox Code Playgroud)
我读了一些有类似问题的帖子,并检查安装了setuptools,它也在
/usr/local/lib/python2.7/dist-packages
Run Code Online (Sandbox Code Playgroud)
我有点不知所措,并会给予任何帮助
我也在跑
numpy 1.6
Run Code Online (Sandbox Code Playgroud)
所以那不是问题
有没有像MATLAB那样做瀑布情节的python模块呢?我搜索了'numpy waterfall','scipy waterfall'和'matplotlib waterfall',但没有找到任何东西.
我知道这个问题有很多变化,但我找不到像我这样的。当我尝试导入模块时,illustris_python
我收到错误ImportError: No module named 'util'
模块 util 在snapshot.py
需要它的模块下面的目录中,所以我很困惑为什么 python 看到一个模块,而不是另一个。我在下面包含了导入调用和回溯。
Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:44:40) [MSC v.1600 64 bit (AMD64)]
Type "copyright", "credits" or "license" for more information.
IPython 3.0.0 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.
%guiref -> A brief reference about the graphical user interface. …
Run Code Online (Sandbox Code Playgroud) 我有三个列表要转换为一个列表.当我尝试以下时获得此错误
A = numpy.array(X,Y,Z,dtype=float)
ValueError: only 2 non-keyword arguments accepted
Run Code Online (Sandbox Code Playgroud)
我在这里没有看到任何说你只能给它两个论点的东西
http://docs.scipy.org/doc/numpy/reference/arrays.ndarray.html
这是代码
import numpy
from numpy import *
X = []
Y = []
Z = []
f = open(r'C:\My.txt')
f.readline()
for line in f:
if line != '':
line = line.strip()
columns = line.split()
x = columns[2]
y = columns[3]
z = columns[4]
X.append(x)
Y.append(y) #appends data in list
Z.append(z)
A = numpy.array(X,Y,Z,dtype=float)
A.shape(3,3)
print(A)
Run Code Online (Sandbox Code Playgroud)
谢谢你
当我试图获得像这样的数组的第一个元素
import numpy
a = numpy.array([1,2])
a[:,0]
Run Code Online (Sandbox Code Playgroud)
我收到这个错误
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-3-ed371621c46c> in <module>()
----> 1 a[:,0]
IndexError: too many indices
Run Code Online (Sandbox Code Playgroud)
我想找到一种方法来执行此操作,同时仍然使用切片,因为完整的代码打开并读取许多不同的文件,numpy.loadtxt()
所有文件都有两列,从1到N不等.
我写了下面的代码来总结系列(-1)^i*(i/(i+1))
.但是当我运行它时,我得到-1
n的任何值.
有人可以指出我做错了什么吗?先感谢您!
#include <iostream>
using namespace std;
int main()
{
int sum = 0;
int i = 1.0;
int n = 5.0;
for(i=1;i<=n;i++)
sum = (-1)^i*(i/(i+1));
cout << "Sum" <<" = "<< sum << endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud) 嗨我试图将文件位置表示为变量,因为最终脚本将在另一台机器上运行.这是我试过的代码,然后是我得到的错误.在我看来,一些python如何添加"\",这是导致问题.如果是这种情况,我如何让它不插入"\"?谢谢
F = 'C:\Documents and Settings\myfile.txt','r'
f = open(F)
Run Code Online (Sandbox Code Playgroud)
和错误
TypeError: invalid file: ('C:\\Documents and Settings\\myfile.txt', 'r')
Run Code Online (Sandbox Code Playgroud) 当我使用以下代码使用numpy加载csv文件时
F = np.loadtxt(F,skiprows=1, delimiter=',',usecols=(2,4,6))
MASS = F[:,4]
#print(MASS)
Z = F[:,6]
N = len(MASS)
print(len(MASS))
Run Code Online (Sandbox Code Playgroud)
我收到以下错误
Traceback (most recent call last):
File "C:\Users\Codes\test2.py", line 16, in <module>
F = np.loadtxt(F,skiprows=1, delimiter=',',usecols=(2,4,6))
File "C:\Python34\lib\site-packages\numpy\lib\npyio.py", line 859, in loadtxt
X.append(items)
MemoryError
Run Code Online (Sandbox Code Playgroud)
我有24Gb如果物理内存和文件是2.70Gb所以我不明白为什么我收到此错误.谢谢!
编辑
我也尝试像这样加载相同的文件
f = open(F) #Opens file
f.readline() # Strips Header
nlines = islice(f, N) #slices file to only read N lines
for line in nlines:
if line !='':
line = line.strip()
line = line.replace(',',' ') #Replace comma with …
Run Code Online (Sandbox Code Playgroud) 我有一个功能,我在两台不同的机器上使用,一台运行Python 2.6版本的Mac,另一台运行版本为3.2的联想.该功能将数据写入文件并在循环中调用.当使用Python 3.2时,它按预期工作,我得到如下所示的输出
25.0 25.0 25.0 0
25.0 25.0 75.0 0
25.0 25.0 125.0 0
25.0 25.0 175.0 0
25.0 25.0 225.0 0
25.0 75.0 25.0 0
25.0 75.0 75.0 0
25.0 75.0 125.0 0
25.0 75.0 175.0 0
25.0 75.0 225.0 0
Run Code Online (Sandbox Code Playgroud)
当我在运行2.6版本的机器上运行它时,我得到了这个
175.0 25.0 75.0 2
175.0 25.0 125.0 0
25.0 25.0 25.0 0 Should be first line
175.0 25.0 175.0 0
25.0 25.0 75.0 0 Should be second line
175.0 25.0 225.0 0
25.0 25.0 125.0 1 …
Run Code Online (Sandbox Code Playgroud) python ×9
numpy ×6
arrays ×3
file ×2
import ×2
python-3.x ×2
c++ ×1
matlab ×1
matplotlib ×1
memory ×1
scipy ×1
series ×1
statsmodels ×1
sum ×1