我有一个CSV文件
Identity,Number,Data,Result,Add,,,,,,,,,,,,
1,,,,4,55,,92,,,,,,,,,62,
3,,,,7,43,,12,,,,,,,,,74,
7,,,,3,58,,52,,,,,,,,,64,
0,,,,6,10,,22,,,,,,,,,96,
3,,,,8,13,,92,,,,,,,,,22,
如何在R中删除空列?
期望输出
Identity,Number,Data,Result,Add
1,4,55,92,62
3,7,43,12,74
7,3,58,52,64
0,6,10,22,96
3,8,13,92,22
8条答案
按热度按时间5m1hhzi41#
导入数据后(使用其他回答者建议的方法),运行以下命令,将
mydf
替换为您决定调用的 Dataframe :kcrjzv8t2#
将空单元格转换为NA,然后删除NA
vktxenjb3#
更复杂的移除逻辑是这样的:
vi4fp9gy4#
从janitor尝试remove_empty
使用来自托马斯的帖子的输入:
waxmsbnn5#
如果我们的列数有限,就像您在本例中的列数一样,下面是一个很好的解决方法。
dojqjjoe6#
加载数据文件,不包括标题行:
然后只加载标题行:
然后使用来自
n
的名称为完整数据分配名称,不包括NA
列:请注意,如果您将其保存为文件,则完整代码应为:
aurhwmvo7#
你只保留那些名字不为空的列怎么样?
y3bcpkx18#
这是一个我有时候为了好玩而使用的奇特函数。请注意,它并不健壮-它会在整个环境中搜索
.data
数据集,如果运行select()
,则dplyr
会将其放在那里,因此它取决于其内部框架(可能会更改):现在选择使用:
如果我们可以在这个函数中使用
dplyr::pick(everything())
就好了,但是他们限制了mutate()
,filter()
和group_by()
的使用。