本文整理汇总了Python中Orange.data.Table.from_numpy方法的典型用法代码示例。如果您正苦于以下问题:Python Table.from_numpy方法的具体用法?Python Table.from_numpy怎么用?Python Table.from_numpy使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Orange.data.Table
的用法示例。
在下文中一共展示了Table.from_numpy方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_varying_between_combined
# 需要导入模块: from Orange.data import Table [as 别名]
# 或者: from Orange.data.Table import from_numpy [as 别名]
def test_varying_between_combined(self):
X = np.array([[0, 0, 0, 0, 0, 1,],
[0, 0, 1, 1, 0, 1,],
[0, 0, 0, 2, np.nan, np.nan,],
[0, 1, 0, 0, 0, 0,],
[0, 1, 0, 2, 0, 0,],
[0, 1, 0, 0, np.nan, 0,]])
M = np.array([["A", 0, 0, 0, 0, 0, 1,],
["A", 0, 0, 1, 1, 0, 1,],
["A", 0, 0, 0, 2, np.nan, np.nan,],
["B", 0, 1, 0, 0, 0, 0,],
["B", 0, 1, 0, 2, 0, 0,],
["B", 0, 1, 0, 0, np.nan, 0,]], dtype=str)
variables = [ContinuousVariable(name="F%d" % j) for j in range(X.shape[1])]
metas = [StringVariable(name="M%d" % j) for j in range(M.shape[1])]
domain = Domain(attributes=variables, metas=metas)
data = Table.from_numpy(X=X, domain=domain, metas=M)
self.assertEqual(varying_between(data, idvar=data.domain.metas[0]),
[variables[2], variables[3], metas[3], metas[4], metas[5], metas[6]])
data = Table.from_numpy(X=sp.csr_matrix(X), domain=domain, metas=M)
self.assertEqual(varying_between(data, idvar=data.domain.metas[0]),
[variables[2], variables[3], metas[3], metas[4], metas[5], metas[6]])
示例2: test_varying_between_combined
# 需要导入模块: from Orange.data import Table [as 别名]
# 或者: from Orange.data.Table import from_numpy [as 别名]
def test_varying_between_combined(self):
X = np.array([[0, 0, 0, 0, 0, 1,],
[0, 0, 1, 1, 0, 1,],
[0, 0, 0, 2, np.nan, np.nan,],
[0, 1, 0, 0, 0, 0,],
[0, 1, 0, 2, 0, 0,],
[0, 1, 0, 0, np.nan, 0,]])
M = np.array([["A", 0, 0, 0, 0, 0, 1,],
["A", 0, 0, 1, 1, 0, 1,],
["A", 0, 0, 0, 2, np.nan, np.nan,],
["B", 0, 1, 0, 0, 0, 0,],
["B", 0, 1, 0, 2, 0, 0,],
["B", 0, 1, 0, 0, np.nan, 0,]], dtype=str)
variables = [ContinuousVariable(name="F%d" % j) for j in range(X.shape[1])]
metas = [StringVariable(name="M%d" % j) for j in range(M.shape[1])]
domain = Domain(attributes=variables, metas=metas)
data = Table.from_numpy(X=X, domain=domain, metas=M)
self.assertEqual(varying_between(data, idvar=data.domain.metas[0]),
[variables[2], variables[3], metas[3], metas[4], metas[5], metas[6]])
# scipy.sparse uses matrix; this filter can be removed when it's fixed
warnings.filterwarnings(
"ignore", ".*the matrix subclass.*", PendingDeprecationWarning)
data = Table.from_numpy(X=sp.csr_matrix(X), domain=domain, metas=M)
self.assertEqual(varying_between(data, idvar=data.domain.metas[0]),
[variables[2], variables[3], metas[3], metas[4], metas[5], metas[6]])
示例3: test_do_not_recluster_on_same_data
# 需要导入模块: from Orange.data import Table [as 别名]
# 或者: from Orange.data.Table import from_numpy [as 别名]
def test_do_not_recluster_on_same_data(self):
"""Do not recluster data points when targets or metas change."""
# Prepare some dummy data
x = np.eye(5)
y1, y2 = np.ones((5, 1)), np.ones((5, 2))
meta1, meta2 = np.ones((5, 1)), np.ones((5, 2))
table1 = Table.from_numpy(
domain=Domain.from_numpy(X=x, Y=y1, metas=meta1),
X=x, Y=y1, metas=meta1,
)
# X is same, should not cause update
table2 = Table.from_numpy(
domain=Domain.from_numpy(X=x, Y=y2, metas=meta2),
X=x, Y=y2, metas=meta2,
)
# X is different, should cause update
table3 = table1.copy()
table3.X[:, 0] = 1
with patch.object(self.widget, 'commit') as commit:
self.send_signal(self.widget.Inputs.data, table1)
self.commit_and_wait()
call_count = commit.call_count
# Sending data with same X should not recompute the clustering
self.send_signal(self.widget.Inputs.data, table2)
self.commit_and_wait()
self.assertEqual(call_count, commit.call_count)
# Sending data with different X should recompute the clustering
self.send_signal(self.widget.Inputs.data, table3)
self.commit_and_wait()
self.assertEqual(call_count + 1, commit.call_count)
示例4: __init__
# 需要导入模块: from Orange.data import Table [as 别名]
# 或者: from Orange.data.Table import from_numpy [as 别名]
def __init__(self, data, learners, store_data=False, store_models=False, preprocessor=None, callback=None):
super().__init__(
data,
len(learners),
store_data=store_data,
store_models=store_models,
preprocessor=preprocessor,
callback=callback,
)
domain = data.domain
X = data.X.copy()
Y = data._Y.copy()
metas = data.metas.copy()
teX, trX = X[:1], X[1:]
teY, trY = Y[:1], Y[1:]
te_metas, tr_metas = metas[:1], metas[1:]
if data.has_weights():
W = data.W.copy()
teW, trW = W[:1], W[1:]
else:
W = teW = trW = None
self.row_indices = np.arange(len(data))
if self.store_models:
self.models = []
self.actual = Y.flatten()
nmethods = len(learners)
n_callbacks = nmethods * len(data)
for test_idx in self.row_indices:
X[[0, test_idx]] = X[[test_idx, 0]]
Y[[0, test_idx]] = Y[[test_idx, 0]]
metas[[0, test_idx]] = metas[[test_idx, 0]]
if W:
W[[0, test_idx]] = W[[test_idx, 0]]
test_data = Table.from_numpy(domain, teX, teY, te_metas, teW)
train_data = Table.from_numpy(domain, trX, trY, tr_metas, trW)
if self.preprocessor is not None:
train_data = self.preprocessor(train_data)
if self.store_models:
fold_models = [None] * nmethods
self.models.append(fold_models)
for i, learner in enumerate(learners):
model = self.train_if_succ(i, learner, train_data)
self.call_callback((test_idx * nmethods + i) / n_callbacks)
if not model:
continue
if self.store_models:
fold_models[i] = model
if data.domain.has_discrete_class:
values, probs = model(test_data, model.ValueProbs)
self.predicted[i][test_idx] = values
self.probabilities[i][test_idx, :] = probs
elif data.domain.has_continuous_class:
values = model(test_data, model.Value)
self.predicted[i][test_idx] = values
self.call_callback(1)
示例5: test_prediction_dimensions
# 需要导入模块: from Orange.data import Table [as 别名]
# 或者: from Orange.data.Table import from_numpy [as 别名]
def test_prediction_dimensions(self):
class MockModel(Model):
def predict(self, data):
return np.zeros((data.shape[0], len(domain.class_var.values)))
x = np.zeros((42, 5))
y = np.zeros(42)
domain = Domain([ContinuousVariable(n) for n in "abcde"],
DiscreteVariable("y", values=["a", "b"]))
data = Table.from_numpy(domain, x, y)
a_list = [[0] * 5] * 42
a_tuple = ((0, ) * 5,) * 42
m = MockModel(domain)
for inp in (data, x, sp.csr_matrix(x), a_list, a_tuple):
msg = f"in test for type '{type(inp)}'"
# two-dimensional
self.assertEqual(m(inp, ret=m.Value).shape, (42, ), msg)
self.assertEqual(m(inp, ret=m.Probs).shape, (42, 2), msg)
values, probs = m(inp, ret=m.ValueProbs)
self.assertEqual(values.shape, (42, ), msg)
self.assertEqual(probs.shape, (42, 2), msg)
# one-dimensional
if not isinstance(inp, sp.csr_matrix):
self.assertEqual(m(inp[0], ret=m.Value).shape, (), msg)
self.assertEqual(m(inp[0], ret=m.Probs).shape, (2, ), msg)
values, probs = m(inp[0], ret=m.ValueProbs)
self.assertEqual(values.shape, (), msg)
self.assertEqual(probs.shape, (2, ), msg)
示例6: manual_move_anchor
# 需要导入模块: from Orange.data import Table [as 别名]
# 或者: from Orange.data.Table import from_numpy [as 别名]
def manual_move_anchor(self, show_anchors=True):
self.__replot_requested = False
X = self.plotdata.X = self._X
anchors = self.plotdata.anchors
validmask = self.plotdata.validmask
EX = np.dot(X, anchors)
data_x = self.data.X[validmask]
data_y = self.data.Y[validmask]
radius = np.max(np.linalg.norm(EX, axis=1))
if self.plotdata.rand is not None:
rand = self.plotdata.rand
EX = EX[rand]
data_x = data_x[rand]
data_y = data_y[rand]
selection = self.plotdata.selection[validmask]
selection = selection[rand]
else:
selection = self.plotdata.selection[validmask]
coords = (EX / radius)
if show_anchors:
self._anchor_circle()
attributes = () + self.data.domain.attributes + (self.variable_x, self.variable_y)
domain = Domain(attributes=attributes,
class_vars=self.data.domain.class_vars)
data = Table.from_numpy(domain, X=np.hstack((data_x, coords)),
Y=data_y)
self.graph.new_data(data, None)
self.graph.selection = selection
self.graph.update_data(self.variable_x, self.variable_y, reset_view=False)
示例7: compute
# 需要导入模块: from Orange.data import Table [as 别名]
# 或者: from Orange.data.Table import from_numpy [as 别名]
def compute(self):
fileName = xoppy_calc_xinpro(
CRYSTAL_MATERIAL=self.CRYSTAL_MATERIAL,
MODE=self.MODE,
ENERGY=self.ENERGY,
MILLER_INDEX_H=self.MILLER_INDEX_H,
MILLER_INDEX_K=self.MILLER_INDEX_K,
MILLER_INDEX_L=self.MILLER_INDEX_L,
ASYMMETRY_ANGLE=self.ASYMMETRY_ANGLE,
THICKNESS=self.THICKNESS,
TEMPERATURE=self.TEMPERATURE,
NPOINTS=self.NPOINTS,
SCALE=self.SCALE,
XFROM=self.XFROM,
XTO=self.XTO,
)
# send specfile
self.send("xoppy_specfile", fileName)
print("Loading file: ", fileName)
# load spec file with one scan, # is comment
out = np.loadtxt(fileName)
print("data shape: ", out.shape)
# get labels
txt = open(fileName).readlines()
tmp = [line.find("#L") for line in txt]
itmp = np.where(np.array(tmp) != (-1))
labels = txt[itmp[0]].replace("#L ", "").split(" ")
print("data labels: ", labels)
#
# build and send orange table
#
domain = Domain([ContinuousVariable(i) for i in labels])
table = Table.from_numpy(domain, out)
self.send("xoppy_table", table)
示例8: compute
# 需要导入模块: from Orange.data import Table [as 别名]
# 或者: from Orange.data.Table import from_numpy [as 别名]
def compute(self):
fileName = xoppy_calc_xraylib_widget(FUNCTION=self.FUNCTION,ELEMENT=self.ELEMENT,ELEMENTORCOMPOUND=self.ELEMENTORCOMPOUND,COMPOUND=self.COMPOUND,TRANSITION_IUPAC_OR_SIEGBAHN=self.TRANSITION_IUPAC_OR_SIEGBAHN,TRANSITION_IUPAC_TO=self.TRANSITION_IUPAC_TO,TRANSITION_IUPAC_FROM=self.TRANSITION_IUPAC_FROM,TRANSITION_SIEGBAHN=self.TRANSITION_SIEGBAHN,SHELL=self.SHELL,ENERGY=self.ENERGY)
#send specfile
if fileName == None:
print("Nothing to send")
else:
self.send("xoppy_specfile",fileName)
sf = specfile.Specfile(fileName)
if sf.scanno() == 1:
#load spec file with one scan, # is comment
print("Loading file: ",fileName)
out = np.loadtxt(fileName)
print("data shape: ",out.shape)
#get labels
txt = open(fileName).readlines()
tmp = [ line.find("#L") for line in txt]
itmp = np.where(np.array(tmp) != (-1))
labels = txt[itmp[0]].replace("#L ","").split(" ")
print("data labels: ",labels)
#
# build and send orange table
#
domain = Domain([ ContinuousVariable(i) for i in labels ])
table = Table.from_numpy(domain, out)
self.send("xoppy_table",table)
else:
print("File %s contains %d scans. Cannot send it as xoppy_table"%(fileName,sf.scanno()))
示例9: make_table
# 需要导入模块: from Orange.data import Table [as 别名]
# 或者: from Orange.data.Table import from_numpy [as 别名]
def make_table(attributes, target=None, metas=None):
"""Build an instance of a table given various variables.
Parameters
----------
attributes : Iterable[Tuple[Variable, np.array]
target : Optional[Iterable[Tuple[Variable, np.array]]
metas : Optional[Iterable[Tuple[Variable, np.array]]
Returns
-------
Table
"""
attribute_vars, attribute_vals = list(zip(*attributes))
attribute_vals = np.array(attribute_vals).T
target_vars, target_vals = None, None
if target is not None:
target_vars, target_vals = list(zip(*target))
target_vals = np.array(target_vals).T
meta_vars, meta_vals = None, None
if metas is not None:
meta_vars, meta_vals = list(zip(*metas))
meta_vals = np.array(meta_vals).T
return Table.from_numpy(
Domain(attribute_vars, class_vars=target_vars, metas=meta_vars),
X=attribute_vals, Y=target_vals, metas=meta_vals,
)
示例10: test_get_column_merge_infrequent
# 需要导入模块: from Orange.data import Table [as 别名]
# 或者: from Orange.data.Table import from_numpy [as 别名]
def test_get_column_merge_infrequent(self):
widget = self.widget
get_column = widget.get_column
disc = DiscreteVariable("disc", list("abcdefghijklmno"))
disc2 = DiscreteVariable("disc2", list("abc"))
domain = Domain([disc], disc2)
x = np.array(
[1, 1, 1, 5, 4, 1, 1, 5, 8, 5, 5, 0, 0, 0, 4, 5, 10], dtype=float)
y = np.ones(len(x))
widget.data = Table.from_numpy(domain, np.atleast_2d(x).T, y)
np.testing.assert_almost_equal(get_column(disc), x)
self.assertEqual(get_column(disc, return_labels=True), disc.values)
np.testing.assert_almost_equal(get_column(disc2), y)
self.assertEqual(get_column(disc2, return_labels=True), disc2.values)
np.testing.assert_almost_equal(
get_column(disc, merge_infrequent=True),
[1, 1, 1, 2, 3, 1, 1, 2, 3, 2, 2, 0, 0, 0, 3, 2, 3])
self.assertEqual(
get_column(disc, merge_infrequent=True, return_labels=True),
[disc.values[0], disc.values[1], disc.values[5], "Other"])
np.testing.assert_almost_equal(
get_column(disc2, merge_infrequent=True), y)
self.assertEqual(
get_column(disc2, return_labels=True, merge_infrequent=True),
disc2.values)
# Test that get_columns modify a copy of the data and not the data
np.testing.assert_almost_equal(get_column(disc), x)
self.assertEqual(get_column(disc, return_labels=True), disc.values)
示例11: test_normalize_sparse
# 需要导入模块: from Orange.data import Table [as 别名]
# 或者: from Orange.data.Table import from_numpy [as 别名]
def test_normalize_sparse(self):
domain = Domain([ContinuousVariable(str(i)) for i in range(3)])
# pylint: disable=bad-whitespace
X = np.array([
[0, -1, -2],
[0, 1, 2],
])
data = Table.from_numpy(domain, X).to_sparse()
# pylint: disable=bad-whitespace
solution = sp.csr_matrix(np.array([
[0, -1, -1],
[0, 1, 1],
]))
normalizer = Normalize()
normalized = normalizer(data)
self.assertEqual((normalized.X != solution).nnz, 0)
# raise error for non-zero offsets
data.X = sp.csr_matrix(np.array([
[0, 0, 0],
[0, 1, 3],
[0, 2, 4],
]))
with self.assertRaises(ValueError):
normalizer(data)
示例12: test_no_targets
# 需要导入模块: from Orange.data import Table [as 别名]
# 或者: from Orange.data.Table import from_numpy [as 别名]
def test_no_targets(self):
x = np.array([[0], [1], [2]])
y = np.full(3, np.nan)
domain = Domain([DiscreteVariable("x", values="abc")],
DiscreteVariable("y", values="abc"))
data = Table.from_numpy(domain, x, y)
self.assertRaises(ValueError, self.learner, data)
示例13: setUp
# 需要导入模块: from Orange.data import Table [as 别名]
# 或者: from Orange.data.Table import from_numpy [as 别名]
def setUp(self):
self.cont_data = Table.from_list(
self.cont_domain,
[[1, 3, 2],
[-1, 5, 0],
[1, 1, 1],
[7, 2, 3]])
self.cont_data2 = Table.from_list(
self.cont_domain,
[[2, 1, 3],
[1, 2, 2]]
)
self.disc_data = Table.from_list(
self.disc_domain,
[[0, 0, 0],
[0, 1, 1],
[1, 3, 1]]
)
self.disc_data4 = Table.from_list(
self.disc_domain,
[[0, 0, 0],
[0, 1, 1],
[0, 1, 1],
[1, 3, 1]]
)
self.mixed_data = self.data = Table.from_numpy(
self.domain, np.hstack((self.cont_data.X[:3], self.disc_data.X)))
示例14: main
# 需要导入模块: from Orange.data import Table [as 别名]
# 或者: from Orange.data.Table import from_numpy [as 别名]
def main():
from Orange.data import Table, Domain, ContinuousVariable, StringVariable
words = 'hey~mr. tallyman tally~me banana daylight come and me wanna go home'
words = np.array([w.replace('~', ' ') for w in words.split()], dtype=object, ndmin=2).T
weights = np.random.random((len(words), 1))
data = np.zeros((len(words), 0))
metas = []
for i, w in enumerate(weights.T):
data = np.column_stack((data, words, w))
metas = metas + [StringVariable('Topic' + str(i)),
ContinuousVariable('weights')]
domain = Domain([], metas=metas)
table = Table.from_numpy(domain,
X=np.zeros((len(words), 0)),
metas=data)
app = QApplication([''])
w = OWWordCloud()
w.on_topic_change(table)
domain = Domain([], metas=[StringVariable('text')])
data = Corpus(domain=domain, metas=np.array([[' '.join(words.flat)]]))
# data = Corpus.from_numpy(domain, X=np.zeros((1, 0)), metas=np.array([[' '.join(words.flat)]]))
w.on_corpus_change(data)
w.show()
app.exec()
示例15: capture_image
# 需要导入模块: from Orange.data import Table [as 别名]
# 或者: from Orange.data.Table import from_numpy [as 别名]
def capture_image(self):
cap = self.cap
for i in range(3): # Need some warmup time; use the last frame
success, frame = cap.read()
if success:
self.Error.no_webcam.clear()
else:
self.Error.no_webcam()
return
def normalize(name):
return ''.join(ch for ch in unicodedata.normalize('NFD', name.replace(' ', '_'))
if unicodedata.category(ch) in 'LuLlPcPd')
timestamp = datetime.now().strftime('%Y%m%d%H%M%S.%f')
image_title, self.image_title = self.image_title or self.DEFAULT_TITLE, ''
normed_name = normalize(image_title)
for image, suffix, output in (
(frame, '', self.Output.SNAPSHOT),
(self.clip_aspect_frame(frame), '_aspect', self.Output.SNAPSHOT_ASPECT)):
path = os.path.join(
self.IMAGE_DIR, '{normed_name}_{timestamp}{suffix}.png'.format(**locals()))
cv2.imwrite(path,
# imwrite expects original bgr image, so this is reversed
self.bgr2rgb(image) if self.avatar_filter else image)
image_var = StringVariable('image')
image_var.attributes['type'] = 'image'
table = Table.from_numpy(Domain([], metas=[StringVariable('name'), image_var]),
np.empty((1, 0)), metas=np.array([[image_title, path]]))
self.send(output, table)
self.snapshot_flash = 80