标签: rows

PostgreSQL:根据排序顺序选择最近的行

我有一张这样的表:

     a    |  user_id
----------+-------------
  0.1133  |  2312882332
  4.3293  |  7876123213
  3.1133  |  2312332332
  1.3293  |  7876543213
  0.0033  |  2312222332
  5.3293  |  5344343213
  3.2133  |  4122331112
  2.3293  |  9999942333
Run Code Online (Sandbox Code Playgroud)

我想找到一个特定的行 -1.3293 | 7876543213例如 - 并选择最近的 4 行。上面 2 个,如果可能的话,下面 2 个。
排序顺序是 ORDER BY a ASC

在这种情况下,我将得到:

  0.0033  |  2312222332
  0.1133  |  2312882332
  2.3293  |  9999942333
  3.1133  |  2312332332
Run Code Online (Sandbox Code Playgroud)

如何使用 PostgreSQL 实现这一目标?(顺便说一句,我正在使用 PHP。)

PS:对于最后一行或第一行,最近的行将是上面 4 行或下面 4 行。

postgresql rows sql-order-by selection window-functions

3
推荐指数
1
解决办法
1666
查看次数

从矩阵中提取一行

我有一个大矩阵,其中前 4 行和列如下所示:

             BI00R1 BI00R2 BI00R3 BI08R1
c51581_g1_i1   0.00   0.00   0.00   0.00

c19380_g1_i1   0.00   0.00   0.00   0.00

c71266_g2_i1   0.00   0.00   0.00   0.00

c70836_g2_i9 572.19 513.89 424.49 760.92
Run Code Online (Sandbox Code Playgroud)

我怎样才能提取一行,比如说,'c19380_g1_i1'从矩阵开始的那一行?可能是微不足道的,我仍然很感激你的帮助。

r extract rows matrix

3
推荐指数
1
解决办法
6958
查看次数

Pandas数据框:将列中的日期转换为行中的值

我正在尝试转换以下数据框(包含县和年份的值)

county  region     2012  2013  ...  2035
A       101        10    15    ...  7
B       101        13    8     ...  11
...
Run Code Online (Sandbox Code Playgroud)

进入如下所示的数据框:

county  region   year  sum
A       101      2012  10
A       101      2013  15
...     ...      ...   ...
A       101      2035  7
B       101      2012  13
B       101      2013  8
B       101      2035  11
Run Code Online (Sandbox Code Playgroud)

我当前的数据框有 400 行(不同县),其中包含 2012-2035 年的值。

我的手动方法是将年份列切掉,并将它们放在上一年的最后一行下方。但当然必须有一种Python式的方式。

我想我在这里缺少一个基本的 pandas 概念,可能我只是找不到这个问题的正确答案,因为我根本不知道如何提出正确的问题。请对新人温柔一点。

python rows dataframe pandas

3
推荐指数
1
解决办法
815
查看次数

有条件地向 data.frame 添加行

data.frame在植物中种植了大量鲜花和水果,进行了 30 年的调查。我想在某些行中添加零 (0),这些行代表植物没有flowersfruits(因为它是季节性物种)的特定月份中的个体。

例子:

Year Month Flowers Fruits
2004 6      25      2
2004 7      48      4
2005 7      20      1
2005 8      16      1
Run Code Online (Sandbox Code Playgroud)

我想添加不包含在零值中的月份,所以我想在一个函数中识别缺失的月份并用 0 填充它们。

谢谢。

conditional r function rows rbind

3
推荐指数
1
解决办法
1794
查看次数

不同行大小的numpy填充矩阵

我有一个不同行大小的 numpy 数组

a = np.array([[1,2,3,4,5],[1,2,3],[1]])
Run Code Online (Sandbox Code Playgroud)

我想把它变成一个密集的(固定的 nxm 大小,没有可变的行)矩阵。直到现在我尝试过这样的事情

size = (len(a),5)    
result = np.zeros(size)
result[[0],[len(a[0])]]=a[0]
Run Code Online (Sandbox Code Playgroud)

但我收到一个错误告诉我

形状不匹配:形状 (5,) 的值数组无法广播到形状 (1,) 的索引结果

我也尝试使用 np.pad 进行填充,但根据 numpy.pad 的文档,似乎我需要在 pad_width 中指定行的先前大小(这是可变的,并在尝试使用 -1,0 时产生错误) , 和最大的行大小)。

我知道我可以像这里显示的那样为每行填充填充列表,但是我需要使用更大的数据数组来做到这一点。

如果有人可以帮助我回答这个问题,我会很高兴知道。

python arrays numpy rows padding

3
推荐指数
1
解决办法
6698
查看次数

如何将函数应用于数据框中的所有行组合?

我无法解决以下有关(通过限制列数简化)数据框“注释”的问题。

require(irr)
# data
annotations <- read.table(text = "Obj1    Obj2    Obj3
Rater1     a       b       c
Rater2     a       b       b
Rater3     a       b       c", header = TRUE, stringsAsFactors = FALSE)
Run Code Online (Sandbox Code Playgroud)

我想将 irr 包中的一致函数应用到行的所有组合(而不是排列),从而产生以下结果。

Agreement rater 1-2: 67%
Agreement rater 1-3: 100%
Agreement rater 2-3: 67%
Run Code Online (Sandbox Code Playgroud)

我需要对所有行组合运行一个函数,并且该函数需要访问多个/所有列。

我已经找出了问题的部分答案;我已经生成了一个正在运行的组合列表combn(rownames(annotations), 2),但我不知道如何在不编写低效的 for 循环的情况下使用该列表。

我尝试过应用,如 中所示apply(annotations, 1, agree),但我只能让它在一行上工作,而不是前面提到的组合。

有人知道如何继续吗?

更新:根据您的建议,以下解决方案有效。(我使用了kappa2irr 包而不是agree,但主要问题的解决方案保持不变。)

require(irr) #require the irr library for agreement calculations
annotations <- read.table(text = "Obj1    Obj2    Obj3
Rater1 …
Run Code Online (Sandbox Code Playgroud)

combinations r rows dataframe

3
推荐指数
1
解决办法
2550
查看次数

根据单元格值的变化递增计数器

我正在尝试提出一个可以迭代窗口数量的公式。应该window随着 的变化而增加binary。理想情况下是这样的。给定列idbinary,window应随着值在binary0 和 1 之间变化而递增。

像这样的东西:

在此输入图像描述

有没有公​​式可以解决这个问题,或者VBA可以解决这个问题?

excel vba rows

3
推荐指数
1
解决办法
4732
查看次数

在Python中按日期合并行和汇总值

我有一个包含多个重复实例的数据框,按日期排序。它看起来像这样:

在此处输入图片说明

我正在尝试按日期合并行以匹配“关键字”,并对“视图”计数求和。

我希望获得的结果如下:

在此处输入图片说明

谁能提示我如何在 Python 中实现这一目标?谢谢你。

数据框:

 df = pd.DataFrame([["3/8/14", "adapter", 2], ["3/8/14", "adapter", 5], ["3/8/14", "charger", 1],
                   ["13/8/14", "adapter", 1], ["13/8/14", "battery-case", 0]],
                  columns=['Date', 'Keyword', 'Views'])
Run Code Online (Sandbox Code Playgroud)

python merge rows dataframe

3
推荐指数
1
解决办法
6667
查看次数

如何跳过或忽略标题上方的行?

Title: This is parsed file      
Job: Proj Doom

Flow,Value  
102,2   
103,3   
104,4   
105,5   
106,6
Run Code Online (Sandbox Code Playgroud)

我是新来的 D3。如果我采用上面的 csv 并删除标题上方的所有内容,我的 d3 图工作正常。csv 是在测试后生成的,我无法遍历每个文件并在加载到 D3 图形之前删除标题上方的行。我想获取这个文件并在不修改它的情况下对其进行可视化。

所以,我唯一的问题是如何过滤掉前 5 行。在所有生成的 *.csv 中,标题上方的行数相同,内容可能会发生变化。

内可以做d3.csv("myCsv", type, function(){});吗?还是需要先用js来做?我正在使用 d3 v4。

javascript csv rows d3.js

3
推荐指数
1
解决办法
583
查看次数

R:purrr:使用 pmap 进行行操作,但这次涉及很多列

这不是问题的重复,例如Row-wise iteration like apply with purrr

我了解如何使用pmap()对数据框进行逐行操作:

library(tidyverse)

df1 = tribble(~col_1, ~col_2, ~col_3,
               1,      5,      12,
               9,      3,      3,
               6,     10,     7)

foo = function(col_1, col_2, col_3) {
  mean(c(col_1, col_2, col_3))
}

df1 %>% pmap_dbl(foo)
Run Code Online (Sandbox Code Playgroud)

foo这给出了应用于每一行的函数:

[1] 6.000000 5.000000 7.666667
Run Code Online (Sandbox Code Playgroud)

但是,当我有多个列时,这会变得非常笨拙,因为我必须显式地将它们全部传递。如果我说,我的数据框中有 8 列df2,并且我想应用一个bar可能涉及其中每一列的函数,该怎么办?

set.seed(12345)
df2 = rnorm(n=24) %>% matrix(nrow=3) %>% as_tibble() %>%
  setNames(c("col_1", "col_2", "col_3", "col_4", "col_5", "col_6", "col_7", "col_8"))

bar = function(col_1, col_2, col_3, col_4, col_5, col_6, col_7, col_8) {
  # …
Run Code Online (Sandbox Code Playgroud)

r rows parameter-passing pmap purrr

3
推荐指数
1
解决办法
999
查看次数