Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python和pandas:df[“colName”与df.loc[:,“colName”完全等效吗?_Python_Pandas - Fatal编程技术网

Python和pandas:df[“colName”与df.loc[:,“colName”完全等效吗?

Python和pandas:df[“colName”与df.loc[:,“colName”完全等效吗?,python,pandas,Python,Pandas,我已经测试了很多场景,在每一个场景中,df['colName']都输出了与df.loc[:,'colName']相同的东西 我只是想确定它们确实是完全相等的。是的,它们做同样的事情。 df['colName']将返回方括号中指定的列,和df.loc['rowName']将返回方括号中指定的行。 df.loc['row1Name':'row2Name','colName']将返回列的所有元素 在括号中指定,从指定的第一行到指定的最后一行 df.loc[:,'colName']基本上是告诉pytho

我已经测试了很多场景,在每一个场景中,
df['colName']
都输出了与
df.loc[:,'colName']
相同的东西


我只是想确定它们确实是完全相等的。

是的,它们做同样的事情。

df['colName']
将返回方括号中指定的列,
df.loc['rowName']
将返回方括号中指定的行。
df.loc['row1Name':'row2Name','colName']
将返回列的所有元素 在括号中指定,从指定的第一行到指定的最后一行

df.loc[:,'colName']
基本上是告诉python返回指定列中的所有元素 从所有行中,它返回整个列


请注意,解析过程可能有所不同,一种方法可能比另一种更有效。

是的,它们做的事情相同。

df['colName']
将返回方括号中指定的列,
df.loc['rowName']
将返回方括号中指定的行。
df.loc['row1Name':'row2Name','colName']
将返回列的所有元素 在括号中指定,从指定的第一行到指定的最后一行

df.loc[:,'colName']
基本上是告诉python返回指定列中的所有元素 从所有行中,它返回整个列


请注意,解析过程可能不同,一种方法可能比另一种更有效。

它们在提供输出方面是相同的,但在性能上有所不同。尝试以下示例并观察

将熊猫作为pd导入
导入时间信息
df=pd.DataFrame({“colName”:range(1000000)},index=range(1000000))
打印(“with.loc:”,timeit.timeit('df.loc[:,“colName”]”,globals=globals())
打印(“不带.loc:”,timeit.timeit('df[“colName”]”,globals=globals())

它们在提供输出方面是相同的,但在性能上有所不同。尝试以下示例并观察

将熊猫作为pd导入
导入时间信息
df=pd.DataFrame({“colName”:range(1000000)},index=range(1000000))
打印(“with.loc:”,timeit.timeit('df.loc[:,“colName”]”,globals=globals())
打印(“不带.loc:”,timeit.timeit('df[“colName”]”,globals=globals())

是的,它们是相等的。您想知道它们在语义上是否相同吗?或者熊猫体内执行的相同路径具有相似的副作用?是的,它们是相等的。你想知道它们在语义上是否相同吗?或者在Pandas中执行相同的路径,具有类似的副作用?语义相同,正确,但它们在Pandas中是否遵循相同的代码路径?有同样的副作用吗?我怀疑,
df.loc[:,'colName']
会有一个稍微不同的代码路径,内存消耗更多相同的语义,是真的,但是它们在熊猫中沿着相同的代码路径走吗?有同样的副作用吗?我怀疑,
df.loc[:,'colName']
的代码路径会有点不同,内存消耗会更多