我有几列的数据帧,如column1,column2 ... column100.如何仅选择列的子集(例如,不是column1)应返回列column2 ... column100的所有列.
data[[colnames(data) .!= "column1"]])
Run Code Online (Sandbox Code Playgroud)
似乎不起作用.
我不想改变数据帧.我只想选择所有没有特定列名的列,如我的示例所示
Ian*_*ske 15
从 DataFrames 0.19 开始,您现在似乎可以做到
select(data, Not(:column1))
Run Code Online (Sandbox Code Playgroud)
选择除列之外的所有内容column1
。要选择除多列之外的所有列,请在倒排索引中使用数组:
select(data, Not([:column1, :column2]))
Run Code Online (Sandbox Code Playgroud)
正如@Reza Afzalan所说,你要做的是返回一个字符串数组,而DataFrames中的列名是符号.
鉴于朱莉娅没有条件列表理解,我猜你能做的最好的事情就是
data[:, filter(x -> x != :column1, names(df))]
Run Code Online (Sandbox Code Playgroud)
这将为您提供删除了第1列的数据集(不会改变它).您可以将其扩展为检查名称列表:
data[:, filter(x -> !(x in [:column1,:column2]), names(df))]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4346 次 |
最近记录: |