2016-04-17 9 views
-2

私はPythonの初心者です。配列やリストの使い方について混乱します。pythonの配列基本的な使い方:step-function

:これは以下のように、トレースバックが動作しませんでした

# -*- coding: utf-8 -* 
import numpy as np 
import matplotlib.pyplot as plt 
import matplotlib as mpl 
import math 
from pylab import * 

i = np.arange(2,5,0.1) 
t = 1+i 
Light = 10 
if t > 3 : 
    Light = 5 

plt.figure('God Bless: Lightcure') 
plt.plot(i,Light) 
plt.show() 

しかし:私はちょうど2つのセクションにデータを分離するようにしたいが、私はどのように知りませんが、以下のようにではなく、基本的な使用方法で私を助けてください

Traceback (most recent call last): 
File "1.py", line 11, in <module> 
if t> 3 : 
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all() 

ありがとうございました!

+0

「3>」とすればどうなると思いますか? – interjay

+0

エラーメッセージが示していることを実行 – ForceBru

+1

[質問のタイトルを変更する]を検討する必要があります(https://meta.stackexchange.com/questions/10647/how-do-i-write-a-good-title) – styvane

答えて

0
# True is where condition is satisfied: numpy.ndarray([False, False, ..., True, True]) 
mask = t > 3 

# Uninitialized array with same shape as t 
Light = numpy.empty_like(t) 

# Light elements set to 5 where corresponding mask elements are True 
Light[mask] = 5 

# Light elements set to 10 where corresponding mask elements are False 
Light[~mask] = 10 
+0

素晴らしい!ありがとう、私は質問をどうやって質問するかに問題があるのではないかと心配しています。それでもあなたから何かを学ぶ、ありがとう! –