我有以下代码段
{数据集:https://www.internationalgenome.org/data-portal/sample}
genome_data = pd.read_csv('../genome')
genome_data_columns = genome_data.columns
genPredict = genome_data[genome_data_columns[genome_data_columns != 'Geuvadis']]
这将删除Geuvadis列,有没有办法我可以包含多个列?
答案 0 :(得分:1)
您可以先不阅读它们吗?
https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.read_csv.html
read_csv中的“ usecols”选项可让您指定要包含在DataFrame中的数据列。
Venkatesh-PrasadRanganath是如何删除多列的正确答案。
但是,如果您要避免将数据读入您不打算使用的内存中,基因组数据= pd.read_csv('../ genome',usecols = [“ only”,“ required”,“ columns”]是要使用的语法。
答案 1 :(得分:1)
您可以像base::FilePath MaybeNormalizePath(const base::FilePath& path) {
#if defined(OS_WIN)
// Normalize any drive letter to upper-case. We do this for consistency with
// net_utils::FilePathToFileURL(), which does the same thing, to make string
// comparisons simpler.
base::FilePath::StringType path_str = path.value();
if (path_str.size() >= 2 && path_str[0] >= L'a' && path_str[0] <= L'z' &&
path_str[1] == L':')
path_str[0] = towupper(path_str[0]);
return base::FilePath(path_str);
#else
return path;
#endif
}
https://chromium.googlesource.com/chromium/chromium/+/refs/heads/trunk/extensions/common/id_util.cc
一样使用DataFrame.drop。
答案 2 :(得分:0)
我认为@ Venkatesh-PrasadRanganath的答案更好,但是对您的尝试采取类似的方法,这就是我的方法。
columns.to_list()
'list(set() - set())
减去要从完整列表中排除的列选择其余的列。
genome_data = pd.read_csv('../genome')
all_genome_data_columns = genome_data.columns.to_list()
excluded_genome_data_columns = ['a', 'b', 'c'] #Type in the columns that you want to exclude here.
genome_data_columns = list(set(all_genome_data_columns) - set(excluded_genome_data_columns))
genPredict = genome_data[genome_data_columns]