我使用 Python Pandas 已经有一段时间了,现在盯着下面的两个命令思考两者之间的区别。
df1['Col1'] #Shows only the values of 'Col1' from df1 dataframe.
df1[['Col1','Col2']] #Shows the values of both 'Col1' and 'Col2' from df1 dataframe.
我的问题是,当我们能够借助单个方括号 ('[ ]') 访问列时,为什么我们不能对访问多列执行相同的操作。我尝试使用以下命令并遇到错误。
df1['Col1','Col2'] #Encountered error
最佳答案
通常 pandas 在使用 []
选择数据时采用一个索引值。传递一个列名或传递一个列名列表。当您传递两个值时,它将被视为一个元组,并将在数据框中搜索相同的值。在某些情况下,元组用作列名。这就是为什么会出现关键错误的原因。
你可以有一个像 df['Col1','Col2'] = 'x'
这样的列名然后这个 df['Col1','Col2']
将工作。为了避免这种歧义,需要将多个列名作为列表传递。
关于Python - 有效访问 Pandas 数据框的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46483035/