pandas - 从 Pandas 数据框中提取数据作为列表,同时保留顺序

标签 pandas python-3.6

假设我有一些 Pandas 数据框 df它有一个名为“HEIGHT”的列,以及许多其他列。

如果我发出 list(df["HEIGHT"]) ,那么这将按照它们在数据框中的确切顺序为我提供该列中项目的列表,即按数据框的索引排序。

总是这样吗? df["HEIGHT"]命令将返回一个系列和 list()将其转换为列表。但是这些操作总是保序的吗?有趣的是在[书1由 Pandas 的作者 (!) 撰写,从我到目前为止的阅读来看,我不清楚这些基本操作何时保持秩序;是否可能始终保留顺序,或者是否有一些简单的规则可以知道何时应该保留顺序?

最佳答案

pandas 系列中元素的顺序(即,pandas DataFrame 中的一列)不会改变,除非你做一些改变它的事情。和一个python的顺序list保证反射(reflect)插入顺序 ( SO thread )。

是的,df[0].tolist() (比 list(df[0]) 稍快)应该总是以与 df[0] 中的元素相同的顺序生成元素的 Python 列表。 .

关于pandas - 从 Pandas 数据框中提取数据作为列表,同时保留顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52764450/

相关文章:

python - 字典是否在 Python 3.6+ 中排序?

python - 用缺失键的默认值替换 pandas 列中的值

pandas - 如何使用 Pandas DataFrame 中相邻列的平均值填充 NaN 值

windows-10 - 在 Windows 10 上使用 f2py 和 Python 3.6 编译 fortran 模块

Python subprocess.Popen 不接受文本参数

python - 根据 PEP8 : uppercase or lowercase? 的常量类属性样式

python - 在字典中插入值时出现问题

python - 摆脱 Pandas 或其 PieChart 可视化引擎中无关紧要数据的聪明方法?

python - 如何仅返回 pandas 数据框中的连续值

python - 选择 pandas DataFrame 中具有特定值的列