我必须删除我的数据帧中的列,该数据帧有超过4000列和180个rows.The。我希望设置以下条件来删除数据帧中的列:(i)如果该列中的值/条目少于两个,则删除该列;(ii)如果该列中没有两个连续的(一个接一个)值,则删除该列。(iii)删除所有值均为NA的列。我已经提供了删除列的条件。这里的目的不仅仅是按照列的名称查找列,就像“如何在data.table中删除列?”那样。我的说明如下:
A B C D E
0.018 NA NA NA NA
0.017 NA NA NA NA
0.019 NA NA NA NA
0.018 0.034
我有一个包含4998列的巨大数据,列标题是公司的名称。这些列在列中包含股票价格作为值。所以,我想删除价值小于1的股票价格(以列为单位)。因此,如果它的值小于1,我想删除整个列。此外,在数据框架中有列,它们的值波动在1以下,然后返回等于或大于1,在这个专栏中,当值低于1时,我想要删除它,用NA代替。我曾经提到“用另一列中的值替换多列中的多个值”,但我的情况有点不同。我演示了一小部分数据框架。
df1 <- Price
Date A B C
01/01/2000 NA 0.03 0.95
02/01/2000 NA 0.0
我想知道每一栏有多少条目?我有超过1000列的数据,而有些包含NA。
例如:
Date A B
1990 NA NA
1991 1 NA
1992 2 2
1993 3 3
1994 4 NA
1995 5 3
1996 NA NA
1997 7 8
1998 8 2
1999 NA NA
2000 8 4
下面是我想要的结果。
A B
8 6
非常感谢
我有一个有超过4000列和3790行的dataframe。列代表公司,并为他们提供每日观测数据。3790行意味着15年的每日观测。现在,我想计算一下,每一列的日观测值等于或超过100,加上正,在15年样本中,即从2000年1月到2014年12月,它是正数。简而言之,我想从我的样本中筛选出从3790中得到的不到100个正观测值的公司。我的数据结构是这样的,因为公司在不同的时间点上市,所以它缺少价值。例如,公司在2003年上市,因此,所有的NAs在2003年之前。我把我的数据文件的结构说明如下:
Date A B C
30/12/1999 79.5 3
我的数据中有很多列,超过4000列。一列为日期,rest为公司(列名)。我有14年的每日观察(行),使它是164个月,.I想要计算基于日期列的月平均数,最重要的是,只有当每个列(公司)至少有15个观察值时,才能计算平均值,否则应该返回NA。
df<- Spread
Date A B C
2000-01-04 0.062893082 0.030769231 NA
2000-01-05 0.062893082 0.015503876 NA
2000-01-06 0.062893082 NA NA
2000-01-0
我有一个包含10,000个观察值的数据帧,并希望有一个新列,其中每一行都有相应的十进制数。十进制分布应按年分组。最好的方法是什么?
year value quartile
1 2000 2.55118169 NA
2 2000 0.79755259 NA
3 2000 0.16918905 NA
4 2001 1.73359245 NA
5 2001 0.41027113 NA
6 2001 0.73012966 NA
7 2002 -1.35901658 NA
8
我有一个包含很多列的表,我想删除缺少值超过500个的列。
我已经知道每列的缺失值的数量:
library(fields)
t(stats(mm))
我得到了:
N mean Std.Dev. min Q1 median Q3 max missing values
V1 1600 8.67 … 400
某些列的所有特征都表现为NA:
N mean Std.Dev. min Q1 median Q3 max
我有一个带有头的CSV文件。一些特性(列)是阶乘的,有些是数字的。
对于阶乘变量,我有很多包含大量NAs的列,例如:
Num1 Fact1 Num2 Fact2 Fact3
9889 Bla 23 BBxv NA
NA NA 456 BBxz NA
NA Abcd 3 BBxx Jet
NA NA 100 BBxy NA
NA NA NA NA NA
我想删除所有的因子列,其中有超过50%的NAs。
例如,由此产生的数据框架应当是:
Num1 Num2 Fact2
9889 23 BBxv
NA 45
15年来,我从5413家公司的数据中下载了伦敦证券交易所的股票价格数据。当您从Datastream下载数据时,其数据不可用的公司用列标签中的#ERROR替换公司名称。
Date A B #ERROR #ERROR E F
31-12-1999 1 2 3 4
3-1-2000
所以,当我把它导入R时,我有
Date A B X. ERROR X.ERROR.1 E F
1999-12-31 1 2 3 4
2000-1-3 N
我有一个包含8000列和3785行的dataframe。列是公司名称,因此,我想通过从投标价格中减去公司的要价,即公司/股票的价差= A.ASK- A.BID来计算公司的价差。在列名A.ASK中,A是公司的名称,.ASK表示的是公司的要价,.BID是A的出价。而在我的数据中,公司的标价和标价都是并排的,如下面的例子所示。另外,我缺少数据,例如,如果C公司在2001年开始交易,它将有2000年的NA。所以,我不想忽略日期列的计算,另外在公司的招投标中有NA,它在结果栏中还我NA。
Date A . ASK A .BID C. ASK C. BID
31/12/1999 NA
我有超过6k列的数据。每个结果都有数据始终相同的列。 XCODE Age Sex ResultA Sex ResultB
1 X001 12 2 2 2 4
2 X002 23 2 4 2 66
3 X003 NA NA NA NA NA
4 X004 32 1 1 1 3
5 X005 NA NA NA NA NA
6 X001 NA NA NA
我在dataframe中有两个列,其中包含左侧外部联接后的日期信息。由于联接的样式,其中一个日期列现在包含NAs。我想检查这些列之间是否所有非NA值是相同的。下面是一个例子:
date 1 date 2
1/1/21 NA
1/2/21 1/2/21
1/3/21 NA
1/4/21 1/4/21
如果所有非NA值匹配,则不需要第二列。
在我做左外连接之前,我做了一个外部连接,下面是这样的语句:
identical(df[['date 1']], df[['date 2']])
返回一个true,因为两列中的每一行确实是
我得到了一个有64列的dataframe (dat),如下所示:
ID A B C
1 NA NA NA
2 5 5 5
3 5 5 NA
我想删除列3到64中只包含NA值的行,例如在示例列A、B和C中,但是我想忽略列ID。
ID A B C
2 5 5 5
3 5 5 NA
我尝试了下面的代码,但是它给我留下了一个空的数据
features <- names(dat)[3:64] # define vector with column names to be filtered at
dat <- da
我有一个数据帧,如下所示: 有超过200列,这只是一个示例。 Col1 Col2 Col2-A Col3 Col3-A
1 3 BA 0 BA
2 5 BA 1 NA
3 7 BA 0 JN
5 9 KD 1 BA
9 10 BA 4 NA 如何筛选/子集此数据集,以便基于包含-A的列,删除包含BA或NA以外
我有一个超过4000列和3000行的数据帧。列是公司,行是每日股票收盘价。数据是这样的,它有缺失值,但由于数据的性质,这些值不能删除。现在,我想通过这些每日股票收盘价的观察来计算简单回报和月度回报。我每天都观察了15年。As,简单返回=(今天价格/昨天价格)-1月返回=(一个月最后一个工作日的价格/上个月最后一个工作日的价格)-1
我展示了我的数据框架,15年数据中的前两个月
Date A B C D
30/12/1999 79.5 325 NA 961
04/01/2000 79.5 325 NA 961
05/0
我有以下数据框架:(这只是一个小样本)
VALUE COUNT AREA n_dd-2000 n_dd-2001 n_dd-2002 n_dd-2003 n_dd-2004 n_dd-2005 n_dd-2006 n_dd-2007 n_dd-2008 n_dd-2009 n_dd-2010
2 16 2431 243100 NA NA NA NA NA NA 3.402293 3.606941 4.000461 3.666381 3.499614
3 16 2610 261
如何确定列值是否相等?
样本数据:
A B C D E
ab NA NA NA NA
ed dd NA NA NA
ll NA NA NA NA
dd NA NA ef NA
如何从列2:5确定它们是否都包含NA?
我希望我的最后数据看起来像这样:
A B C D E F
ab NA NA NA NA TRUE
ed dd NA NA NA FALSE
ll