- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想使用 data.table 将我的数据的长格式转换为宽格式。通常我使用unstack()
,但我不知道如何在data.table中使用它。下面是一个例子。作为输出,我期望三列和三行。
library(data.table)
set.seed(1)
df <- data.frame(class = factor(rep(c("A", "B", "C"), times = 3)),
value = runif(9))
unstack(df, form = value ~ class)
#> A B C
#> 1 0.2655087 0.3721239 0.5728534
#> 2 0.9082078 0.2016819 0.8983897
#> 3 0.9446753 0.6607978 0.6291140
dt <- data.table(df)
dcast(dt, formula = value ~ class, value.var = "value")
#> value A B C
#> 1: 0.2016819 NA 0.2016819 NA
#> 2: 0.2655087 0.2655087 NA NA
#> 3: 0.3721239 NA 0.3721239 NA
#> 4: 0.5728534 NA NA 0.5728534
#> 5: 0.6291140 NA NA 0.6291140
#> 6: 0.6607978 NA 0.6607978 NA
#> 7: 0.8983897 NA NA 0.8983897
#> 8: 0.9082078 0.9082078 NA NA
#> 9: 0.9446753 0.9446753 NA NA
此外,我不想使用聚合函数,但在真实数据的 data.table 中我看到:Aggregate function missing, defaulting to 'length'
,所以行数较少结果。
最佳答案
我想这就是你想要的:
dcast(dt, rowid(class) ~ class)
# class A B C
#1: 1 0.2655087 0.3721239 0.5728534
#2: 2 0.9082078 0.2016819 0.8983897
#3: 3 0.9446753 0.6607978 0.6291140
关于r - data.table 中的 `unstack()` 相当于什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74540592/
尝试将 pandas DataFrames 从宽格式转换为长格式。 我尝试过 melt() ,使用wide_to_long() (简单的 melt()),但一直与我收到的语法和输出混淆。 我还阅读了
我试过 pivot和 groupby + unstack ,两者都给了我错误。 错误说 "Unstacked DataFrame is too big, causing int32 overflow"
我有一个如下所示的数据框: import pandas as pd df = pd.DataFrame({'type_a': [1,0,0,0,0,1,0,0,0,1],
我正在尝试解开张量,因为我需要一个序列作为 RNN 的输入。我正在使用可变序列长度,这使我无法正确使用 tf.unstack . def MapToSequences(x): # x.get_
我正在尝试通过取消嵌套/取消堆叠 df 列,将包含 value 列、两个日期列( start 和 end )和间隔列( duration )的数据帧 duration 转换为长格式。 library(
我有一个如下所示的数据框 op1 = pd.DataFrame({ 'subject_id':[1,1,1,1,2,2,2,2], 'date' : ['1/1/2017','1/2/2017','1
最初我有 DF,其中 1 列操作用 DatetimeIndex 索引: In [371]: dates 2013-12-29 19:21:00 action1 2013-12-29 19:21:
我在问自己是否有可能取消堆叠多索引数据帧的一层,以便不对返回的数据帧的其余索引进行排序!代码示例: arrays = [["room1", "room1", "room1", "room1", "ro
似乎有很多这方面的内容,但我找不到我需要的东西。我正在使用 unstack() 创建一个可以绘制其中项目的 DataFrame。 启动 DataFrame 示例: Date word
我有一个如下所示的数据框: 名称 值 1 值 2 A 100 101 A 100 102 A 100 103 B 200 201 B 200 202 B 200 203 C 300 301 C 30
有np.stack在 NumPy ,但是否有相反的np.unstack同 tf.unstack ? 最佳答案 遇到这么晚,这里有一个简单得多的答案: def unstack(a, axis=0):
我正在开发一个包含混合类型值(timedeltas 和 int)的 MultiIndex 系列: char 7 a 103 minutes s 6
我使用 groupby 和 sum 创建了以下数据框:- year_month Country 2008-01 Afghanistan 2
我编写了以下函数将数据框的几列转换为数值: def factorizeMany(data, columns): """ Factorize a bunch of columns in a da
我正在尝试拆开两列: cols = res.columns[:31] res[cols] = res[cols].ffill() res = res.set_index(cols + [31])[32
我有这个 Pandas DataFrame: rnd non-rnd first last andrew wood 0 1
这个问题已经有答案了: How to unnest (explode) a column in a pandas DataFrame, into multiple rows (16 个回答) 已关闭
我有一个名为 afplot 的数据框: apple_fplot = apple_f1.groupby(['Year','Domain Category'])['Value'].sum() afplot
我正在尝试将 LSTM 与具有不同时间步长(不同帧数)的输入一起使用。 rnn.static_rnn 的输入应该是一个 tf 序列(不是 tf!)。所以,我应该将我的输入转换为序列。我尝试使用 tf.
我遇到了以下对行和列标题进行排序的问题。 这里是重现这个的方法: X =pd.DataFrame(dict(x=np.random.normal(size=100), y=np.random.norm
我是一名优秀的程序员,十分优秀!