结合iloc和loc

时间:2019-03-30 20:39:16

标签: python pandas

我正在尝试结合iloc和loc,有可能吗?

我特别想:

  • 以(:train_size)形式给出行值的整数

  • 给出一个包含各列值的列名称的列表(在下面的代码中替换[0,1])

    training_set =数据集.iloc [:train_size,[0,1]]。值

尝试

training_set = dataset.loc[:train_size,[list_input_and_y_parameters]].values

给出错误消息

TypeError:无法使用

的这些索引器[4275]进行切片索引

有办法吗?

非常感谢

2 个答案:

答案 0 :(得分:1)

您可以链接此操作,或仅将Index.get_indexeriloc一起用于列表中列的位置:

training_set = dataset.iloc[:train_size].loc[:, ['col1','col2']].values

training_set = dataset.iloc[:train_size, df.columns.get_indexer(['col1','col2'])].values

答案 1 :(得分:0)

由于链接result <- by(df, list(df[["group"]], df[["year"]]), function(x) { x[is.na(x$price), "price"] <- mean(x[["price"]], na.rm = TRUE) x }, simplify = TRUE) do.call(rbind, result) loc会导致iloc,因此不需要使用SettingWithCopyWarning的选项可能是:

Index.get_indexer