Как я могу читать в файле .csv (без заголовков) и когда мне нужно только подмножество столбцов (скажем, 4-й и 7-й из 20 столбцов), используя панд? Кажется, я не могу сделатьusecols
Предыдущие ответы были хорошими и правильными, но, по моему мнению, дополнительный names
параметр сделает его идеальным, и это должно быть рекомендовано, особенно когда CSV не имеет headers
.
usecols
и names
параметрыdf = pd.read_csv(file_path, usecols=[3,6], names=['colA', 'colB'])
или используйте, header=None
чтобы явно сказать людям, что csv
заголовок не имеет (в любом случае обе строки идентичны )
df = pd.read_csv(file_path, usecols=[3,6], names=['colA', 'colB'], header=None)
Так что вы можете получить ваши данные с помощью
# with `names` parameter
df['colA']
df['colB']
вместо того
# without `names` parameter
df[0]
df[1]
На основании read_csv , когда names
передаются явно, тогда header
будет вести себя как None
вместо 0
, так что можно пропустить, header=None
когда names
существует.
Убедитесь, что вы указали pass header=None
и add usecols=[3,6]
для 4-го и 7-го столбцов.