跟进Keep csv feature labels for LDA pca我决定忽略 PCA 缩减的特征名称。我正在使用 pandas read_csv() 函数,并且想忽略字符串/文本列,这些列恰好是每个奇数列。因此,在读取 csv 时使用过滤器删除字符串列或奇数列会很有帮助
最佳答案
一种方法是读取列标签,然后通过 pd.read_csv
的 usecols
参数获取每隔一列。 。这假设您的列标签是唯一的,但由于您没有阅读昂贵的 object
dtype 系列,因此会很有效。
import pandas as pd
from io import StringIO
x = """some,header,labels,for,each,column
1,hello,2,test,3,another
4,another,5,test,6,row
7,and,8,one,9,more"""
# get column names, replace StringIO(x) with 'file.csv'
df_cols = pd.read_csv(StringIO(x), nrows=0).columns
# skip even columns, replace StringIO(x) with 'file.csv'
df = pd.read_csv(StringIO(x), usecols=df_cols[::2])
print(df)
some labels each
0 1 2 3
1 4 5 6
2 7 8 9
关于python - 使用 read_csv 只读取奇数/数字列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53696969/