问题标签 [pandas]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 如何使用日期时间对数据框进行切片?
我有一个, 用一个对象pandas.DataFrame
df1
索引。pandas.DateRange
如果我有一个d1
and d2
,作为日期时间,为什么不起作用df[d1:d2]
,我怎样才能获得这个切片?
python - 构建由不同块组成的 pandas.DataFrame 的最佳方法
我正在批量运行每日模拟:我进行 365 次模拟以获得全年的结果。每次运行后,我想从结果中提取一些数组并将它们添加到 pandas.DataFrame 以供稍后分析。
我有一个粗略的模型(进行优化)和一个用于后期模拟的更精确的模型,所以我可以从两个来源获得相同的变量。如果后期模拟完成,结果可能会覆盖优化结果。
为了使其更复杂,优化模型具有较小的输出间隔,具体取决于离散化设置,但最终分析将发生在模拟后的较大间隔上)。
构造此 DataFrame 的最佳方法是什么?
这是我的第一个方法:
DataFrame
df
为全年创建一个空白,DateRange
索引具有较大的模拟后间隔(= 15 分钟)df_temp
优化 1 天 ==>使用DateRange
间隔较小的索引创建临时索引- 如此处所述,将其缩减
DataFrame
至 15 分钟: - 更新
df
为df_temp
(中的行df
仍然是空的,除了上一次运行的最后一行,所以我必须采取df_temp[1:]
) - 为同一天做模拟 ==>
df_temp2
以间隔 = 15 分钟创建临时 df
覆盖相应的行df_temp2
我应该在步骤 4) 和 6) 中使用哪些方法?还是从一开始就有更好的方法?谢谢,罗尔
python - 使用 psycopg2 将 pandas DataFrame 快速插入 Postgres DB
我正在尝试以最有效的方式(使用 Python 2.7)将pandas DataFrame 插入 Postgresql DB(9.1)。
使用“cursor.execute_many”真的很慢,“DataFrame.to_csv(buffer,...)”和“copy_from”也是如此。
我发现一个已经很多了!网络上更快的解决方案(http://eatthedots.blogspot.de/2008/08/faking-read-support-for-psycopgs.html),我适应了熊猫。
我的代码可以在下面找到。
我的问题是这个相关问题的方法(使用“从标准输入复制二进制”)是否可以很容易地转移到使用 DataFrames,如果这会更快。
使用带有 psycopg2 的二进制 COPY 表 FROM
不幸的是,我的 Python 技能不足以理解这种方法的实现。
这是我的方法:
python - pandas - 获取由另一列索引的特定列的最新值(获取由另一列索引的特定列的最大值)
我有以下数据框:
我想获取这些数据的一个子集,'data_date'
以便'value'
每个'obj_id'
.
我已经拼凑了一个解决方案,但感觉很脏。我想知道是否有人有更好的方法。我敢肯定我一定错过了一些通过熊猫来做到这一点的简单方法。
我的方法本质上是分组、排序、检索和重组,如下所示:
pandas - Series 和 DataFrame 对象中存储了哪些额外数据?
我对配置或修补熊猫感兴趣,以使其内存开销尽可能低。在一个实验中,我创建了 2 个 numpy 数组,每个数组包含 5000 万个 uint32 值。以 numpy 格式存储这些数组需要 200 + 200 = 400 MB。如果我将其中一个数组包装成一个 Series 对象(index=None),那么它会消耗大约 600 MB 的内存。如果我将这两个数组包装成一个 DataFrame 对象(index=None),那么内存需求约为 1600 MB。
似乎额外的内存要求是#rows * 8 字节用于系列存储,#rows * (#columns + 1) * 8 字节用于 DataFrame 存储。你能解释一下Series和DataFrame对象中究竟存储了哪些额外数据以及原始numpy
数组吗?
python - 如何使用 Python Pandas 在特定日期时间索引之后获取最近的单行
数据框我有:
我现在使用的是:
有没有更好的方法来做到这一点?我不喜欢我必须指定 .ix[0:1] 而不是 .ix[0],但如果我不指定输出更改为 TimeSeries 而不是 DataFrame 中的单行。我发现在原始 DataFrame 之上使用旋转的 TimeSeries 更难。
没有.ix[0:1]
:
谢谢,
约翰
parsing - 熊猫日期转换器
使用 Pandas 读取文件时,我在解析文件的日期时遇到了一些问题。
我正在使用 python(x,y),版本 2.7。
我正在尝试读取的文件具有以下格式:
使用以下代码行:
输出是:
日期未解析。尝试使用日期执行任何类型的计算时出现错误。我不知道如何使用转换器,并且真的可以使用您的帮助。
python - 在 python pandas 中读取 csv 并处理错误值
我正在使用熊猫来读取 csv 文件。数据是数字,但以文本形式存储在 csv 文件中。有些值在错误或缺失时是非数字的。如何过滤掉这些值并将剩余数据转换为整数。
我认为有一种比循环遍历所有值并isdigit()
用于测试它们是否为数字的更好/更快的方法。
pandas 或 numpy 是否有办法识别读者的不良价值观?如果没有,最简单的方法是什么?我是否必须指定 dtypes 才能完成这项工作?
python - 在熊猫数据框上绘制堆积条形图
这是我在 pycon 参加 Wesley 的教程后第一次尝试使用 Pandas 库。
在对数据框进行了一番探索之后,我很高兴能够以我想要的方式按摩数据,但在绘制数据时遇到了麻烦。我想这也表明我对 matplotlib 库的幼稚。
我拥有的是带有以下数据的熊猫系列对象。我想绘制一个条形图,其中 col 1('file')作为垂直方向的标签。
python - 熊猫:通过使用具有相同索引的第二个系列来更改一个系列
最近,我正在处理 pandas 中的两个系列:
- 第一个系列包含纯数字数据
- 第二个系列包含分类数据:“加号”、“减号”和 NaN。
示例数据:
(在实际场景中,第二个系列是使用与第一个相同的索引以编程方式构建的,但这里只是一个简化示例)
我首先做一些操作:
然后我需要反转相应“减号”条目的符号(乘以-1),然后转到NaN
第二个系列中的NaN
.
后一部分工作正常:
但是我有点坚持前一部分。如何使用第二个系列中的信息(假设它们具有相同的索引)来切换第一个系列中的标志?
作为参考,应用后first_series应该变成这样: