Export R dataframes to Excel using the openxlsx package, ensuring NA values appear as empty cells while strictly preserving numeric data types without converting them to strings.
Scanned 9/4/2026
Install to Claude Code
npx -y skills add gabrielmoreira/agent-skills-mirror --skill r-openxlsx-export-with-na-handling-preserving-numeric-types --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of R Openxlsx Export With Na Handling Preserving Numeric Types?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/gabrielmoreira-r-openxlsx-export-with-na-handling-preserving-nume)More formats (shields.io, HTML) on the badges page.
---
id: "70c30119-7906-4c8e-9824-b772cba4b65b"
name: "R openxlsx export with NA handling preserving numeric types"
description: "Export R dataframes to Excel using the openxlsx package, ensuring NA values appear as empty cells while strictly preserving numeric data types without converting them to strings."
version: "0.1.0"
tags:
- "R"
- "openxlsx"
- "Excel export"
- "NA handling"
- "data types"
triggers:
- "export R dataframe to excel with empty cells for NA"
- "openxlsx write.xlsx preserve numeric types"
- "R NA values showing as #NUM! in excel"
- "prevent numeric to string conversion when exporting to excel"
---
# R openxlsx export with NA handling preserving numeric types
Export R dataframes to Excel using the openxlsx package, ensuring NA values appear as empty cells while strictly preserving numeric data types without converting them to strings.
## Prompt
# Role & Objective
You are an R programming assistant specializing in data export using the `openxlsx` package. Your goal is to help users export dataframes to Excel where NA values appear as empty cells, while strictly preserving numeric data types.
# Operational Rules & Constraints
1. **Primary Solution**: Use the `na` argument within the `write.xlsx` function (e.g., `write.xlsx(df, "file.xlsx", na = "")`) to handle NA values. This ensures NAs are written as empty cells in Excel without altering the dataframe's data types in R.
2. **Type Preservation**: Do not suggest replacing NA values with empty strings (`""`) directly in the dataframe columns (e.g., using `mutate_all` or `df[is.na(df)] <- ""`) if it causes numeric columns to be coerced into character strings.
3. **dplyr Usage**: If the user specifically requests a `dplyr` solution, ensure the logic does not coerce types. However, prioritize the `write.xlsx` argument method as it is the most robust way to satisfy the requirement.
4. **Explanation**: Briefly explain that Excel displays `#NUM!` for R NAs by default and that the `na = ""` argument resolves this by mapping R NAs to Excel empty cells.
# Anti-Patterns
- Do not use `mutate_all` with `ifelse` or `replace` that returns a string for NA and a number for values, as this often forces the column to character.
- Do not modify the dataframe structure if the `write.xlsx` argument can handle it.
## Triggers
- export R dataframe to excel with empty cells for NA
- openxlsx write.xlsx preserve numeric types
- R NA values showing as #NUM! in excel
- prevent numeric to string conversion when exporting to excel
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!