How to remove empty attributes “N/A” in Magento 2?

Remove the Empty attribute from the Product Page Tabs section, By Default Text, which will be displayed as ‘N/A’ for empty attributes.

Attributes Data coming from the Magento Catalog module with view template file name is attributes.phtml

Just Override attributes.phtml file from the Catalog module into your theme, It’s working for the Multilanguage store also.

Theme Path for attributes.phtml file,

app/code/{Packagename}/{themename}/Magento_Catalog/templates/product/view/attributes.phtml

Just keep line,

<?php if($_data['value'] == __( 'N/A')) continue;?>

after

<?php foreach ($_additional as $_data): ?> line,

Full code of attributes.phtml file,

<?php
/**
 * Product additional attributes template
 *
 * @var $block \Magento\Catalog\Block\Product\View\Attributes
 */
?>
<?php
$_helper = $this->helper('Magento\Catalog\Helper\Output');
$_product = $block->getProduct();
?>
<?php if ($_additional = $block->getAdditionalData()): ?>
    <div class="additional-attributes-wrapper table-wrapper">
        <table class="data table additional-attributes" id="product-attribute-specs-table">
            <caption class="table-caption"><?php /* @escapeNotVerified */ echo __('More Information') ?></caption>
            <tbody>
                <?php foreach ($_additional as $_data): ?>
                
                    <?php if($_data['value'] == __('N/A')) continue; ?>
                    <tr>
                        <th class="col label" scope="row"><?php echo $block->escapeHtml(__($_data['label'])) ?></th>
                        <td class="col data" data-th="<?php echo $block->escapeHtml(__($_data['label'])) ?>">
                            <?php /* @escapeNotVerified */ echo $_helper->productAttribute($_product, $_data['value'], $_data['code']) ?>
                        </td>
                    </tr>
                
                <?php endforeach; ?>
            </tbody>
        </table>
    </div>
<?php endif;?>

Clear cache using php bin/magento cache:flush.