小编Bha*_*rma的帖子

pytest 断言用于 pyspark 数据帧比较

我有 2 个 pyspark 数据框,如所附文件所示。预期 df 和实际 df

在此输入图像描述

在我的单元测试中,我试图检查两者是否相等。

我的代码是

expected = map(lambda row: row.asDict(), expected_df.collect()) 
actual = map(lambda row: row.asDict(), actaual_df.collect()) 
assert expected = actual 
Run Code Online (Sandbox Code Playgroud)

由于两个 dfs 相同但行顺序不同,因此断言此处失败。比较此类 dfs 的最佳方法是什么?

python unit-testing pytest pyspark

15
推荐指数
2
解决办法
2万
查看次数

KeyError:访问熊猫系列中的值时为0

在我的脚本中,我有df ['Time'],如下所示。

497   2017-08-06 11:00:00
548   2017-08-08 15:00:00
580   2017-08-10 04:00:00
646   2017-08-12 23:00:00
Name: Time, dtype: datetime64[ns]
Run Code Online (Sandbox Code Playgroud)

但是当我这样做

t1=pd.Timestamp(df['Time'][0])
Run Code Online (Sandbox Code Playgroud)

我收到这样的错误:

KeyError:0

我是否需要在这里进行任何类型转换,如果可以,那么如何解决?

python indexing series pandas

7
推荐指数
1
解决办法
1万
查看次数

熊猫无法比较未过时和可感知过的日期时间

我有这样的DF:

df['Time']
2017-08-06 11:00:00+00:00
2017-08-08 15:00:00+00:00
2017-08-10 04:00:00+00:00
2017-08-12 23:00:00+00:00
2017-08-08 15:00:00+00:00
Run Code Online (Sandbox Code Playgroud)

我想用条件切片

mask1=df['Time'] > datetime.datetime.strptime('2017-08-12', "%Y-%m-%d")
Run Code Online (Sandbox Code Playgroud)

我收到类似的错误

无法比较未过时的日期和可感知到的日期时间

我不得不以某种方式转换df['Time']为天真幼稚。
请帮我解决这个问题。

python-2.7 pandas

5
推荐指数
1
解决办法
2034
查看次数

根据多个条件计算列

我正在阅读有关基于行为的新计算的博客,其中插入了新的col“ category”。

data = {'name': ['Jason', 'Molly', 'Tina', 'Jake', 'Amy'], 
        'age': [42, 52, 36, 24, 73], 
        'preTestScore': [4, 24, 31, 2, 3],
        'postTestScore': [25, 94, 57, 62, 70]}
df = pd.DataFrame(data, columns = ['name', 'age', 'preTestScore', 'postTestScore'])
df['category'] = np.where(df['age']>=50, 'yes', 'no')
Run Code Online (Sandbox Code Playgroud)

它如何扩展到多种条件,如年龄小于20岁的孩子; 如果在21至40岁之间,则年轻; 如果高于40,则年龄较大

python pandas

2
推荐指数
1
解决办法
78
查看次数

对列表中两个字符串之间的元素求和

str我有一个和元素列表int,如下所示

L = [1, "a", "b", 1, 2, 1, "d", 1, "e", 4, 5, "f", "g", 2]
Run Code Online (Sandbox Code Playgroud)

我想总结两个字符串元素之间找到的数字,因此预期的输出结果如下。

[1, "a", "b", 4, "d", 1, "e", 9, "f", "g", 2]
Run Code Online (Sandbox Code Playgroud)

我想以Pythonic的方式解决这个问题。如何做到这一点?

python

-2
推荐指数
1
解决办法
85
查看次数

标签 统计

python ×4

pandas ×3

indexing ×1

pyspark ×1

pytest ×1

python-2.7 ×1

series ×1

unit-testing ×1