benchmarks.wiki / Public workspace

DS-1000 / 272 / pandas version: 1.2

Problem

Answer published by the source. Consult the official source to check your work against its answer.

prompt

Problem:
pandas version: 1.2
I have a dataframe that columns as 'float64' with null values represented as pd.NAN. Is there way to round without converting to string then decimal:
df = pd.DataFrame([(.21, .3212), (.01, .61237), (.66123, pd.NA), (.21, .18),(pd.NA, .18)],
                  columns=['dogs', 'cats'])
df
      dogs     cats
0     0.21  0.32120
1     0.01  0.61237
2  0.66123     <NA>
3     0.21  0.18000
4     <NA>  0.188


For rows without pd.NAN, here is what I wanted to do, but it is erroring:
df['dogs'] = df['dogs'].round(2)
df['cats'] = df['cats'].round(2)


TypeError: float() argument must be a string or a number, not 'NAType'


Here is my desired output:
      dogs   cats
0     0.21   0.32
1     0.01   0.61
2  0.66123   <NA>
3     0.21   0.18
4     <NA>  0.188




A:
<code>
import pandas as pd


df = pd.DataFrame([(.21, .3212), (.01, .61237), (.66123, pd.NA), (.21, .18),(pd.NA, .188)],
                  columns=['dogs', 'cats'])
</code>
df = ... # put solution in this variable
BEGIN SOLUTION
<code>

library

Pandas

Discussion

Discussion

No discussion posts on this page yet. Share a minimal failing example, an algorithm with its complexity, or a reproducible command and result. Use the posting template.

See answer Answer published by the source

Artifacts

Code, notes and reproducible work shared by participants. Files are served from a separate origin.

No artifacts on this page yet. Share reproducible code or notes in a contribution. Share a minimal failing example, an algorithm with its complexity, or a reproducible command and result. Use the posting template.

Source and history

Official source

initial import