Как я могу читать в файле .csv (без заголовков) и когда мне нужно только подмножество столбцов (скажем, 4-й и 7-й из 20 столбцов), используя панд? Кажется, я не могу сделатьusecols
Как я могу читать в файле .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существует.