当前位置: 首页 > 知识库问答 >
问题:

pandas.dataframe.columns.values.ToList()与pandas.dataframe.columns.ToList()相同吗

邢嘉祯
2023-03-14
pandas.DataFrame.columns.values.tolist()
pandas.DataFrame.columns.tolist()

稍稍反省一下,似乎表明值只是一些实现细节,只是一个数字。ndarray

>>> import pandas
>>> d = pandas.DataFrame( { 'a' : [1,2,3], 'b' : [0,1,3]} )
>>> d
   a  b
0  1  0
1  2  1
2  3  3
>>> type(d.columns)
<class 'pandas.core.indexes.base.Index'>
>>> type(d.columns.values)
<class 'numpy.ndarray'>
>>> type(d.columns.tolist())
<class 'list'>
>>> type(d.columns.values.tolist())
<class 'list'>
>>> d.columns.values
array(['a', 'b'], dtype=object)
>>> d.columns.values.tolist()
['a', 'b']
>>> d.columns
Index(['a', 'b'], dtype='object')
>>> d.columns.tolist()
['a', 'b']

共有1个答案

公沈义
2023-03-14

输出相同,但如果真的很大,df的定时是不同的:

np.random.seed(23)
df = pd.DataFrame(np.random.randint(3, size=(5,10000)))
df.columns = df.columns.astype(str)
print (df)

In [90]: %timeit df.columns.values.tolist()
10000 loops, best of 3: 79.5 µs per loop

In [91]: %timeit df.columns.tolist()
10000 loops, best of 3: 173 µs per loop

也使用不同的功能:

index.values带有numpy.ndarray.tolist

In [93]: %timeit list(df.columns.values)
1000 loops, best of 3: 169 µs per loop
 类似资料:
  • 我正在使用JPA2CriteriaBuilder构建一个查询,并使用Hibernate4作为我的提供者。我一直在玩FetchModes,并得出结论,选择是我需要的。但选择forces将启用FetchType.Lazy。我在什么地方读到这篇文章,似乎是这样的。 在Devices类中,此配置会产生正确的结果: 但是,我不希望在我的实体中硬编码FetchType=Eager。我想控制提取发生的时间,我想

  • 问题内容: 如果输入参数是字节数组-byte [],则dll的本机方法可在Java中使用。如果我们使用c#中的相同方法,则会抛出EntryPointNotFoundException。 是因为java和c#中的byte []是不同的东西吗?如果是这样,我应该如何使用c#中的本机函数? 问题答案: Java缺少无符号类型。特别是,Java缺少无符号字节的原始类型。Java字节类型是带符号的,而C#字

  • 问题内容: 我有一个 : 我也试图有一个名为: 我知道在OBJC中它可以工作,但是我没有在Swift中看到一种方法来做到这一点。有办法解决这个问题,还是我不了解Swift中明显的架构/概念更改? 提前致谢。 问题答案: 这在ObjC中是个坏主意,在Swift中是非法的。考虑以下一些情况: 什么是在这种情况下?是还是它?将类的方法视为闭包是合法且有用的。 如果我们更加棘手,该怎么办: Swift应该

  • 问题内容: 我正在上一门计算机科学课程,课程大纲说要下载Java 1.6。我找不到Java 1.6,所有内容都显示JDK6。当我用Java 1.6进行搜索时,发现此链接: http://java.sun.com/javase/downloads/index.jsp 这就是他所说的Java 1.6吗?我下载了JDK 6 update 17和netbeans 6.8。我会给教员发电子邮件并问他这个问题

  • 问题内容: 在Java中,“二进制代码”与“ Java字节码”的含义相同吗? 这是Java中的流程吗? Java文件(.java)-> [javac]-> ByteCode文件(.class)-> [JVM / Java解释器]->运行它(首先将其转换为特定于机器的二进制代码) 谢谢! 问题答案: 答案取决于您的意思 。 是一种二进制数据格式,包括Java虚拟机的加载信息和执行指令。从这个意义上讲

  • 这个问题很简单,但似乎在网上找不到。我正在尝试制作一个程序,根据文件类型将给我扩展名。