我很好奇,在 Svelte JS 组件树的多个级别之间转发或分派事件的最佳方法是什么?
假设我有 App.Svelte、一些中间数字级别(每个级别包含一个子组件)和 Modal.Svelte。如果我想将事件从 Modal 转发或分派到应用程序,正确的方法是什么?
据我了解,Svelte 中的事件转发将遍历组件树并将事件转发到引用转发事件的第一个父级。(这是正确的解释吗?)
使用事件调度方法,每个嵌套组件需要 1/ 导入 createEventDispatcher,2/ 创建调度程序变量,3/ 定义一个用于调度事件的函数。然后父级需要导入该函数并在标记内引用它,例如<p>. (它是否正确?)
如果我在上述两点上都是正确的,我想知道是否没有更简化的方法,例如将事件连接到存储,这将有效地展平组件树,以便任何组件都可以接收转发的事件。尽管我认为如果多个组件引用相同的转发事件,这可能会导致一些难以调试的行为。
我正在尝试修改本教程中的代码以使其适应多类数据(我有 55 个不同的类)。触发错误,但我不确定根本原因。我对本教程所做的更改已在同一行注释中进行了注释。
两个解决方案之一可以满足这个问题:
(A) 帮助确定错误的根本原因,或者
(B) 使用 PyTorch LSTM 进行多类分类的样板脚本
import spacy
import torchtext
from torchtext import data
import re
TEXT = data.Field(tokenize = 'spacy', include_lengths = True)
LABEL = data.LabelField(dtype = torch.float)
fields = [(None,None),('text', TEXT), ('wage_label', LABEL)]
train_torch, test_torch = data.TabularDataset.splits(path='/Users/jdmoore7/Desktop/Python Projects/560_capstone/',
format='csv',
train='train_text_target.csv',
test='test_text_target.csv',
fields=fields,
skip_header=True)
import random
train_data, valid_data = train_torch.split(random_state = random.seed(SEED))
MAX_VOCAB_SIZE = 25_000
TEXT.build_vocab(train_data,
max_size = MAX_VOCAB_SIZE,
vectors = "glove.6B.100d",
unk_init = torch.Tensor.normal_)
LABEL.build_vocab(train_data)
BATCH_SIZE = 64
device = torch.device('cuda' if …Run Code Online (Sandbox Code Playgroud) 在 Presto db 表中,我有两个字符串字段,一个是“2022-01-01”形式的日期,另一个是 22:00 形式的小时。我试图将这两个元素组合成一个正确的时间戳,包括日期、小时、分钟、秒。我怎样才能做到这一点?
到目前为止我尝试过的
SELECT DATE_ADD('hour', 22, DATE(d) ) AS dt
FROM table
Run Code Online (Sandbox Code Playgroud)
但是,我收到错误“小时”不是正确的日期字段。然而,从文档来看,我的论点似乎按正确的顺序排列。 https://prestodb.io/docs/current/functions/datetime.html
假设我的表中有一些数据,t。
id, arr
--, ---
1, [1,2,3]
2, [4,5,6]
Run Code Online (Sandbox Code Playgroud)
SQL
SELECT AVG(n) FROM UNNEST(
SELECT arr FROM t AS n) AS avg_arr
Run Code Online (Sandbox Code Playgroud)
这会返回错误,'Mismatched input 'SELECT'. Expecting <expression>。取消数组嵌套并聚合未嵌套值的正确方法是什么?
寻找要在 GCP AI Platform notebook 中使用的相关 Python 代码,该代码将能够查询 GCP Cloud SQL(特别是 Postgresql)。不幸的是,我没有从 GCP 官方甚至非附属资源中找到任何相关资源/教程。
python postgresql google-cloud-platform gcp-ai-platform-notebook
假设我有一些数据:
df = pd.DataFrame({'location':['store','online','store','online','online'],
'item': ['apple','apple','orange','orange','orange']})
df
>>>
location item
0 store apple
1 online apple
2 store orange
3 online orange
4 online orange
Run Code Online (Sandbox Code Playgroud)
您将注意到,有四种可能的变量组合:(store,apple)、(online,apple)、(store,orange)、(online,orange)。我想分配一个虚拟变量列。我天真的方法创建了四个虚拟变量,而我想要一个标签列:
pd.get_dummies(df,['location','item'])
>>>
location_online location_store item_apple item_orange
0 0 1 1 0
1 1 0 1 0
2 0 1 0 1
3 1 0 0 1
4 1 0 0 1
Run Code Online (Sandbox Code Playgroud)
而我更喜欢它看起来像:
df
>>>
location item combination dummy
0 store apple (store, apple) 0
1 online apple (online, apple) 1
2 store orange (store, …Run Code Online (Sandbox Code Playgroud) 以下代码片段来自 Google 教程,它只是打印给定存储桶中 GCP 上的文件名称:
from google.cloud import storage
def list_blobs(bucket_name):
"""Lists all the blobs in the bucket."""
# bucket_name = "your-bucket-name"
storage_client = storage.Client()
# Note: Client.list_blobs requires at least package version 1.17.0.
blobs = storage_client.list_blobs(bucket_name)
for blob in blobs:
print(blob.name)
list_blobs('sn_project_data')
Run Code Online (Sandbox Code Playgroud)
不可以从命令行运行:
$ python path/file.py
Run Code Online (Sandbox Code Playgroud)
在我的终端中,该存储桶中的文件被打印出来。太棒了,它有效!然而,这并不是我的目标。我正在寻找打开一个文件并对其进行操作。例如:
$ python path/file.py
Run Code Online (Sandbox Code Playgroud)
但是,当我将路径传递给上面时,返回的错误为“无效的文件路径”。所以我确信有某种 GCP 特定函数调用来实际访问这些文件......
我应该运行什么命令?
编辑:该视频https://www.youtube.com/watch?v=ED5vHa3fE1Q展示了打开文件的技巧,并且在此过程中需要使用StringIO。但它不支持 Excel 文件,因此这不是一个有效的解决方案。
我对 Jax 文档感到困惑,这就是我想要做的:
def line(m,x,b):
return m*x + b
grad(line)(1,2,3)
Run Code Online (Sandbox Code Playgroud)
和错误:
---------------------------------------------------------------------------
FilteredStackTrace Traceback (most recent call last)
<ipython-input-48-d14b17620b30> in <module>()
3
----> 4 grad(line)(1,2,3)
FilteredStackTrace: TypeError: grad requires real- or complex-valued inputs (input dtype that is a sub-dtype of np.floating or np.complexfloating), but got int32. If you want to use integer-valued inputs, use vjp or set allow_int to True.
The stack trace above excludes JAX-internal frames.
The following is the original exception that occurred, unmodified.
--------------------
The above exception …Run Code Online (Sandbox Code Playgroud) 是否可以在Python中传递一个对象,使得对该对象的唯一引用是self关键字?
class A:
def __init__(self):
self.val = 'A'
def wave(self,friend):
friend.make_friend(self)
class B:
def __init__(self):
val = 'B'
def make_friend(self, friend):
self.friend = friend
a = A
b = B
a.wave(friend=B)
>>>
----> 1 a.wave(friend=B)
TypeError: A.wave() missing 1 required positional argument: 'self'
Run Code Online (Sandbox Code Playgroud)
从这个错误来看,这似乎是不可能的。参见A类方法波。这个方法打算将 A 发送到 B。但是我无法在 A 中引用 A,因为它只是该类的一个实例。因此,我想使用 self 关键字来传递它。