标签: missing-data

gsutil 没有匹配的 url,但出现在云存储浏览器中

我正在尝试检索我们放入 Cloud Storage 的数据库备份。长话短说,URL 是 gs://servername/year/date/data.sql

比这稍微复杂一点,但为了这个问题,就可以了。

无论如何,当我使用存储浏览器(项目 -> 存储 -> 存储浏览器)时,我可以进入 /server/2014/2014-09/04/ - 但这就是事情变得奇怪的地方。

子文件夹/目录仅在该日期逐步存在和消失。我可以整天进出 2014-09-04 的存储桶子文件夹,每次都会有不同的结果。有时存在增量数据,有时仅存在模式数据。尝试从存储浏览器下载任何文件都会出现一个大的“未找到”空白错误页面。没有链接,没有 http 响应代码。只是“未找到”。我们所有较旧的日期文件夹都很好。

如果我使用 gsutil 尝试检索整个子文件夹,它会显示:

CommandException:没有匹配的 URL:gs://servername/2014/2014-09-04

我运行的命令是:

gsutil.py mv gs://server/2014/2014-09-04 c:\dbrestore\

然而它就在存储浏览器中,一目了然。(只有一个 ACL,所以我知道这不是问题)为了确保我没有做一些奇怪的事情,我已经复制了它周围的日期,所以 2014-09-03 和 2014-09-05 都是完全可访问的来自存储浏览器和 gsutil。

我不知道可能出了什么问题。坦率地说,桶里的东西看起来塞满了。以前有人遇到过这个问题吗?如果有,您采取了什么措施来纠正它?

missing-data google-cloud-storage gsutil

5
推荐指数
0
解决办法
2625
查看次数

我正在尝试将行中的所有 NaN 值填充到 Pandas 中的数字数据类型为零

我有一个混合了字符串和浮动行的 DateFrame。浮点行仍然是整数,只是因为它们缺少值才更改为浮点数。我想用零填充所有数字的 NaN 行,同时将 NaN 留在字符串列中。这是我目前所拥有的。

df.select_dtypes(include=['int', 'float']).fillna(0, inplace=True)
Run Code Online (Sandbox Code Playgroud)

这不起作用,我认为这是因为 .select_dtypes() 返回 DataFrame 的视图,因此 .fillna() 不起作用。是否有与此类似的方法来仅填充浮点行上的所有 NaN。

python missing-data pandas

5
推荐指数
1
解决办法
2956
查看次数

多类分类中缺失值的 Keras 自定义损失

您好,我的训练数据中标签中有很多缺失值,例如单个标签可以具有以下值:

[nan, 0, 0, nan, 1, 0]
Run Code Online (Sandbox Code Playgroud)

我想训练一个忽略 nan 值的分类模型。目前我已将 nan 值填充为 -1,并尝试对其进行切片。掩码不起作用,因为分类交叉熵仍然考虑到它

ix = tf.where(tf.not_equal(y_true, -1))
true = tf.gather(y_true, ix)
pred = tf.gather(y_pred, ix)
return keras.objectives.categorical_crossentropy(true, pred)
Run Code Online (Sandbox Code Playgroud)

是我到目前为止所能想到的,但它有错误

InvalidArgumentError (see above for traceback): Incompatible shapes: [131] vs. [128]
         [[Node: mul_1 = Mul[T=DT_FLOAT, _device="/job:localhost/replica:0/task:0/gpu:0"](Mean, _recv_dense_3_sample_weights_0/_13)]]
Run Code Online (Sandbox Code Playgroud)

有谁知道如何处理这个问题?

python missing-data keras tensorflow multiclass-classification

5
推荐指数
1
解决办法
2349
查看次数

列中缺少/NaT 值时如何转换日期格式

我有几个日期列,我想将它们转换为月/日/年格式。假设 test 是日期列之一 - 下面的代码有效。

dfq['test1'] = dfq['test1'].apply(lambda x: x.strftime('%m/%d/%Y'))
Run Code Online (Sandbox Code Playgroud)

但是,当列中缺少作为 'NaT' 的值时,它会显示错误 ValueError: NaTType 不支持 strftime 。我创建了一个样本数据集,并有意将一个缺失值保留为 ' ' 。在这种情况下,它也会显示错误。

我想保留缺失值或 NaT 值,因此无法删除它们。还有其他办法吗?

另一个问题,如果我想同时转换我所有的日期列(比如 test1、test、test3), - 有没有办法在使用 lambda/strftime 时做到这一点?

python date missing-data python-3.x pandas

5
推荐指数
1
解决办法
4338
查看次数

无需创建新日历即可填充 BigQuery (SQL) 中的缺失日期

我正在尝试创建一个 SQL,以便我可以在 Google Data Studio 中通过 BigQuery 的连接制作一个时间序列图表。你可以在下面看到我的 SQL。

WITH 
CTE_1 AS
(SELECT ID, Date, Min_Predict, Max_Predict, Interval
,ROW_NUMBER() OVER (PARTITION BY ID ORDER BY Date) AS row_num
FROM
    table),
    CTE_2 AS
(SELECT Date, Min_Predict, Max_Predict,
SUM(Min_Predict) OVER (ORDER BY Date) AS Min,
SUM(Max_Predict) OVER (ORDER BY Date) AS Max
FROM CTE_1
WHERE
    row_num = 1 AND Interval = 'A')

SELECT Date, Min, Max
From CTE_2
GROUP BY Date, Min, Max
ORDER BY Date
Run Code Online (Sandbox Code Playgroud)

结果我得到了这张表。

Row ProgressDate            EstMin  EstMax  
1 …
Run Code Online (Sandbox Code Playgroud)

sql missing-data google-bigquery

5
推荐指数
1
解决办法
3504
查看次数

自定义 DataTables 如何在 Shiny 中显示缺失值

DataTables, 在 Shiny 中,将缺失值显示为空格。有没有办法改变它?我特别梦想RStudio 在其数据查看器中使用的灰色斜体NA。出于显示目的将此类字符串注入字符列我没有问题,但是,当然,有时列是数字或日期,将它们转换为仅用于显示似乎有问题。

DT默认缺失值的MWE显示:

library(DT)
library(shiny)

ui <- fluidPage(
    dataTableOutput("airquality")
)

server <- function(input, output) {
    output$airquality <- renderDataTable(airquality)
}

shinyApp(ui = ui, server = server)
Run Code Online (Sandbox Code Playgroud)

default_dt_display

r datatables missing-data shiny dt

5
推荐指数
1
解决办法
579
查看次数

如何总结具有缺失数据的分类变量?

我正在尝试对分类变量脆弱分数执行 group_by 总结。数据的结构使得每个主题都有多个观察结果,其中一些包含缺失的数据,例如

Subject  Frailty
1        Managing well
1        NA
1        NA
2        NA
2        NA
2        Vulnerable
3        NA
3        NA
3        NA
Run Code Online (Sandbox Code Playgroud)

我希望对数据进行汇总,以便在有可用的情况下出现脆弱的描述,如果没有则出现 NA 例如

Subject  Frailty
1        Managing well
2        Vulnerable 
3        NA
Run Code Online (Sandbox Code Playgroud)

我尝试了以下两种方法,它们都返回错误:

Mode <- function(x) {
ux <- na.omit(unique(x[!is.na(x)]))
tab <- tabulate(match(x, ux)); ux[tab == max(tab)]
}

data %>% 
group_by(Subject) %>% 
summarise(frailty = Mode(frailty)) %>% 

Error: Expecting a single value: [extent=2].
Run Code Online (Sandbox Code Playgroud)
condense <- function(x){unique(x[!is.na(x)])}

data %>% 
group_by(subject) %>% 
summarise(frailty = condense(frailty))

Error: Column frailty must …
Run Code Online (Sandbox Code Playgroud)

r summary missing-data categorical-data

5
推荐指数
1
解决办法
67
查看次数

为什么熊猫使用 numpy 中的“NaN”,而不是它自己的空值?

这是一个比较宽泛的话题,但我将尝试将其缩减为一些具体问题。

在开始回答关于 SO 的问题时,我发现自己在制作玩具数据时有时会遇到这样的愚蠢错误:

In[0]:

import pandas as pd

df = pd.DataFrame({"values":[1,2,3,4,5,6,7,8,9]})
df[df < 5] = np.nan

Out[0]:
NameError: name 'np' is not defined
Run Code Online (Sandbox Code Playgroud)

我很用来自动导入numpy使用pandas,这并不通常发生在实际的代码。但是,它确实让我想知道为什么pandas没有自己的值/对象来表示空值。

我最近才意识到你可以使用 PythonNone代替类似的情况:

import pandas as pd

df = pd.DataFrame({"values":[1,2,3,4,5,6,7,8,9]})
df[df < 5] = None
Run Code Online (Sandbox Code Playgroud)

它按预期工作并且不会产生错误。但是我觉得我看到的 SO 的约定是使用np.nan,人们np.nan在讨论空值时通常会提到这个约定(这也许是我没有意识到None可以使用的原因,但也许那是我自己的特质) .

简要地研究一下,我现在看到它自 1.0.0 以来pandas 确实具有pandas.NA价值,但我从未见过有人在帖子中使用它

In[0]:

import pandas as pd
import numpy as np

df = pd.DataFrame({'values':np.random.rand(20,)})
df['above'] …
Run Code Online (Sandbox Code Playgroud)

python null numpy missing-data pandas

5
推荐指数
1
解决办法
926
查看次数

根据列添加缺失的行

我给出了以下 df

df = pd.DataFrame(data = {'day': [1, 1, 1, 2, 2, 3], 'pos': 2*[1, 14, 18], 'value': 2*[1, 2, 3]}    
df
Run Code Online (Sandbox Code Playgroud)
    day pos value
0   1   1   1
1   1   14  2
2   1   18  3
3   2   1   1
4   2   14  2
5   3   18  3
Run Code Online (Sandbox Code Playgroud)

我想填写行,以便每天都有列“pos”的所有可能值

想要的结果:

    day pos value
0   1   1   1.0
1   1   14  2.0
2   1   18  3.0
3   2   1   1.0
4   2   14  2.0
5   2   18  NaN
6   3 …
Run Code Online (Sandbox Code Playgroud)

python missing-data pandas

5
推荐指数
1
解决办法
52
查看次数

删除所有列中带有 NA 的尾随(最后)行

我试图排除该行的NA所有列中都有缺失值 ( ) 的行,并且所有后续行都只有缺失值(或者是最后一个空行本身),即我想删除尾随的“所有- NA”行。

我想出了下面的解决方案,它有效但速度太慢(我在数千个表上使用这个函数),可能是因为while循环。

## Aux function to remove NA rows below table
remove_empty_row_last <- function(dt){
  dt[ , row_empty := rowSums(is.na(dt)) == ncol(dt)] 
  while (dt[.N, row_empty] == TRUE) {
    dt <- dt[1:(.N-1)]
    
  }
  dt %>% return()
}

d <- data.table(a = c(1,NA,3,NA,5,NA,NA), b = c(1,NA,3,4,5,NA,NA))
remove_empty_row_last(d)

#EDIT2: adding more test cases
d2 <- data.table(A = c(1,NA,3,NA,5,1 ,NA), B = c(1,NA,3,4,5,NA,NA))
remove_empty_row_last(d2)
d3 <- data.table(A = c(1,NA,3,NA,5,NA,NA), B = c(1,NA,3,4,5,1,NA))
remove_empty_row_last(d3)

#Edit3:adding no NA …
Run Code Online (Sandbox Code Playgroud)

r subset missing-data na data.table

5
推荐指数
3
解决办法
224
查看次数