我的代码中有错误,无论尝试哪种方式都无法解决。
错误很简单,我返回一个值:
torch.exp(-LL_total/T_total)
Run Code Online (Sandbox Code Playgroud)
然后在管道中获取错误:
RuntimeError: Can't call numpy() on Variable that requires grad. Use var.detach().numpy() instead.
Run Code Online (Sandbox Code Playgroud)
诸如此类的解决方案cpu().detach().numpy()也会出现相同的错误。
我该如何解决?谢谢。
我有一个像这样的数据集:
Id Status
1 0
1 0
1 0
1 0
1 1
2 0
1 0
2 0
3 0
3 0
Run Code Online (Sandbox Code Playgroud)
我想在ID的状态变为1后删除ID的所有行,即我的新数据集将是:
Id Status
1 0
1 0
1 0
1 0
1 1
2 0
2 0
3 0
3 0
i.e.
1 0 --> gets removed since this row appears after id 1 already had a status of 1
Run Code Online (Sandbox Code Playgroud)
由于我有非常大的数据集(超过200 GB),因此如何有效地实现它。
谢谢你的帮助。
我有一个像这样的数据集:
id date value
1 16-12-1 9
1 16-12-1 8
1 17-1-1 18
2 17-3-4 19
2 17-3-4 20
1 17-4-3 21
2 17-7-13 12
3 17-8-9 12
2 17-9-12 11
1 17-11-12 19
3 17-11-12 21
Run Code Online (Sandbox Code Playgroud)
上面唯一的结构是行按日期排序。
我想要做的是,按 id 分组并重新采样日期,以便每个 id 具有相同的数值。每月、每周或每天重新采样就足够了。
我的最终数据集(每年重新采样)如下所示:
id interval value
1 16-12-1 - 17-12-1 75
2 16-12-1 - 17-12-1 62
3 16-12-1 - 17-12-1 33
Run Code Online (Sandbox Code Playgroud)
如何实施?这行得通吗(因为我在日期字段中没有秒,即它不是标准的 pandas 日期时间对象)?
dataframe.groupby(id).resample('year')
Run Code Online (Sandbox Code Playgroud)
有没有更快的方法来做到这一点?
我需要重新采样 Pandas 中的一些数据,我使用下面的代码:
根据我的数据,5 hours.
df['date'] = pd.to_datetime(df['date'], format='%y-%m-%d')
df = df.set_index('date')
df.groupby('id').resample('D')['value'].agg('sum').loc[lambda x: x>0]
Run Code Online (Sandbox Code Playgroud)
这速度太慢了。
如何在数据上加快上述代码的速度:
id date value
1 16-12-1 9
1 16-12-1 8
1 17-1-1 18
2 17-3-4 19
2 17-3-4 20
1 17-4-3 21
2 17-7-13 12
3 17-8-9 12
2 17-9-12 11
1 17-11-12 19
3 17-11-12 21
giving output:
id date
1 2016-12-04 17
2017-01-01 18
2017-04-09 21
2017-11-12 19
2 2017-03-05 39
2017-07-16 12
2017-09-17 11
3 2017-08-13 12
2017-11-12 21 …Run Code Online (Sandbox Code Playgroud) 我在这个简单的层中出现以下错误:
class MyLayer(Layer):
def __init__(self):
super(MyLayer, self).__init__()
def build(self):
# Create a trainable weight variable for this layer.
self.kernel = self.add_weight(name='kernel',
shape=(1)
trainable=True)
super(MyLayer, self).build()
def call(self, x):
return x/self.kernel
Run Code Online (Sandbox Code Playgroud)
当我将它用作:
m = MyLayer()
t = m (input)
Run Code Online (Sandbox Code Playgroud)
错误:build() 采用一个位置参数,但给出了两个。
RuntimeError: invalid argument 0: Sizes of tensors must match except in dimension 2. Got 32 and 71 in dimension 0 at /pytorch/aten/src/THC/generic/THCTensorMath.cu:87
Run Code Online (Sandbox Code Playgroud)
我有一个张量的形状[71 32 1]。
我想[100 32 1]通过填充零向量来使其形状。
我尝试通过连接形状为零的填充矢量[29 32 1]。我收到上面的错误。
我尝试使用形状为零的填充矢量[29 32 1],但仍然出现错误。
如何创建所需的张量?
我有一个简单的用例:
我有 3 个变量,x、y 和 z。
我想将 z 绘制为 x 和 y 的函数,因此是 3D 绘图。
python ×7
pandas ×3
dataframe ×2
pytorch ×2
group-by ×1
keras ×1
keras-layer ×1
matplotlib ×1
numpy ×1
tensor ×1
tensorflow ×1
tf.keras ×1
time-series ×1