Skip to content

st.spatial.SME.SME_normalize: ValueError: Input X contains NaN. #310

Description

@liangyuli12138

Hi, tks for developing this useful tool. I encounter some question when I use the SME_normalize function.

Here is my code

#read dataadata=sc.read_h5ad(Datapath)
count_matrix=adata.Xspatial=adata.obs[['x','y']]
spatial.rename(columns={'x':'imagerow','y':'imagecol'},inplace=True)
data=st.create_stlearn(count=count_matrix,spatial=spatial,library_id=f'{sample}', scale=1,background_color="white")
data.obs['array_row']=spatial.iloc[:,0]
data.obs['array_col']=spatial.iloc[:,1]
data.var_names_make_unique()
data.layers['raw_count']=data.X#tile dataTILE_PATH=Path(os.path.join(outDir,'{0}_tile'.format(sample)))
TILE_PATH.mkdir(parents=True,exist_ok=True)
#tile morphologyst.pp.tiling(data,TILE_PATH,crop_size=40)
st.pp.extract_feature(data)
###process datast.pp.normalize_total(data)
st.pp.log1p(data)
#gene pca dimention reductionst.em.run_pca(data,n_comps=50,random_state=0)
#stSME to normalise log transformed datast.spatial.SME.SME_normalize(data, use_data="raw",weights="weights_matrix_gd_md")

I always get this error:

Extract feature: 100%|████████████████████████████████████ [ time left: 00:00 ]
Traceback (most recent call last):
File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 57, in
ME_normalize(Datapath=adata,outDir=outdir,sample=sample)
File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 41, in ME_normalize
st.spatial.SME.SME_normalize(data, use_data="raw",weights = "weights_matrix_gd_md")
File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/normalize.py", line 60, in SME_normalize
calculate_weight_matrix(adata, platform=platform)
File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/_weighting_matrix.py", line 48, in calculate_weight_matrix
reg_row = LinearRegression().fit(array_row.values.reshape(-1, 1), img_row)
File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 1152, in wrapper
return fit_method(estimator, *args, **kwargs)
File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/linear_model/_base.py", line 678, in fit
X, y = self._validate_data(
File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 622, in _validate_data
X, y = check_X_y(X, y, **check_params)
File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 1146, in check_X_y
X = check_array(
File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 957, in check_array
_assert_all_finite(
File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 122, in _assert_all_finite
_assert_all_finite_element_wise(
File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 171, in _assert_all_finite_element_wise
raise ValueError(msg_err)
ValueError: Input X contains NaN.
LinearRegression does not accept missing values encoded as NaN natively. For supervised learning, you might want to consider sklearn.ensemble.HistGradientBoostingClassifier and Regressor which accept missing values encoded as NaNs natively. Alternatively, it is possible to preprocess the data, for instance by using an imputer transformer in a pipeline or drop samples with missing values. See https://scikit-learn.org/stable/modules/impute.html You can find a list of all estimators that handle NaN values at the following page: https://scikit-learn.org/stable/modules/impute.html#estimators-that-handle-nan-values

#================================================================================
And I checked my data ,it does not have NAN value

>>>np.any(np.isnan(data.X.toarray()))
False>>>np.all(np.isfinite(data.X.toarray()))
True# same as count_matrix>>>np.isnan(count_matrix.toarray()).any()
False>>>np.isfinite(count_matrix.toarray()).any()
True

Now, I don't know what should i do. I'd really appreciate it if you could help me with this problem

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      , 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
       blocks
      (function() {
      function addCopyButtons() {
      document.querySelectorAll('pre code').forEach(function(codeBlock) {
      if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
      codeBlock.parentElement.setAttribute('data-copy-added', 'true');
      var btn = document.createElement('button');
      btn.textContent = 'Copy';
      btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
      btn.onmouseover = function() { this.style.opacity = '1'; };
      btn.onmouseout = function() { this.style.opacity = '0.7'; };
      btn.onclick = function() {
      navigator.clipboard.writeText(codeBlock.textContent).then(function() {
      btn.textContent = 'Copied!';
      setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
      });
      };
      codeBlock.parentElement.style.position = 'relative';
      codeBlock.parentElement.appendChild(btn);
      });
      }
      addCopyButtons();
      // Re-run on dynamic content
      var observer = new MutationObserver(addCopyButtons);
      observer.observe(document.body, { childList: true, subtree: true });
      })();
      }
      } catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
      })();
      (function(){
      try {
      var __m = "github.com";
      var __re = new RegExp('^' + "github\\.com" + '
      st.spatial.SME.SME_normalize: ValueError: Input X contains NaN. · Issue #310 · BiomedicalMachineLearning/stLearn · GitHub
      Skip to content

      st.spatial.SME.SME_normalize: ValueError: Input X contains NaN. #310

      Description

      @liangyuli12138

      Hi, tks for developing this useful tool. I encounter some question when I use the SME_normalize function.

      Here is my code

      #read dataadata=sc.read_h5ad(Datapath)
      count_matrix=adata.Xspatial=adata.obs[['x','y']]
      spatial.rename(columns={'x':'imagerow','y':'imagecol'},inplace=True)
      data=st.create_stlearn(count=count_matrix,spatial=spatial,library_id=f'{sample}', scale=1,background_color="white")
      data.obs['array_row']=spatial.iloc[:,0]
      data.obs['array_col']=spatial.iloc[:,1]
      data.var_names_make_unique()
      data.layers['raw_count']=data.X#tile dataTILE_PATH=Path(os.path.join(outDir,'{0}_tile'.format(sample)))
      TILE_PATH.mkdir(parents=True,exist_ok=True)
      #tile morphologyst.pp.tiling(data,TILE_PATH,crop_size=40)
      st.pp.extract_feature(data)
      ###process datast.pp.normalize_total(data)
      st.pp.log1p(data)
      #gene pca dimention reductionst.em.run_pca(data,n_comps=50,random_state=0)
      #stSME to normalise log transformed datast.spatial.SME.SME_normalize(data, use_data="raw",weights="weights_matrix_gd_md")

      I always get this error:

      Extract feature: 100%|████████████████████████████████████ [ time left: 00:00 ]
      Traceback (most recent call last):
      File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 57, in
      ME_normalize(Datapath=adata,outDir=outdir,sample=sample)
      File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 41, in ME_normalize
      st.spatial.SME.SME_normalize(data, use_data="raw",weights = "weights_matrix_gd_md")
      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/normalize.py", line 60, in SME_normalize
      calculate_weight_matrix(adata, platform=platform)
      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/_weighting_matrix.py", line 48, in calculate_weight_matrix
      reg_row = LinearRegression().fit(array_row.values.reshape(-1, 1), img_row)
      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 1152, in wrapper
      return fit_method(estimator, *args, **kwargs)
      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/linear_model/_base.py", line 678, in fit
      X, y = self._validate_data(
      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 622, in _validate_data
      X, y = check_X_y(X, y, **check_params)
      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 1146, in check_X_y
      X = check_array(
      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 957, in check_array
      _assert_all_finite(
      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 122, in _assert_all_finite
      _assert_all_finite_element_wise(
      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 171, in _assert_all_finite_element_wise
      raise ValueError(msg_err)
      ValueError: Input X contains NaN.
      LinearRegression does not accept missing values encoded as NaN natively. For supervised learning, you might want to consider sklearn.ensemble.HistGradientBoostingClassifier and Regressor which accept missing values encoded as NaNs natively. Alternatively, it is possible to preprocess the data, for instance by using an imputer transformer in a pipeline or drop samples with missing values. See https://scikit-learn.org/stable/modules/impute.html You can find a list of all estimators that handle NaN values at the following page: https://scikit-learn.org/stable/modules/impute.html#estimators-that-handle-nan-values

      #================================================================================
      And I checked my data ,it does not have NAN value

      >>>np.any(np.isnan(data.X.toarray()))
      False>>>np.all(np.isfinite(data.X.toarray()))
      True# same as count_matrix>>>np.isnan(count_matrix.toarray()).any()
      False>>>np.isfinite(count_matrix.toarray()).any()
      True

      Now, I don't know what should i do. I'd really appreciate it if you could help me with this problem

      Metadata

      Metadata

      Assignees

      No one assigned

        Labels

        No labels
        No labels

        Projects

        No projects

          Milestone

          No milestone

          Relationships

          None yet

          Development

          No branches or pull requests

          Issue actions

          , 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' st.spatial.SME.SME_normalize: ValueError: Input X contains NaN. · Issue #310 · BiomedicalMachineLearning/stLearn · GitHub
          Skip to content

          st.spatial.SME.SME_normalize: ValueError: Input X contains NaN. #310

          Description

          @liangyuli12138

          Hi, tks for developing this useful tool. I encounter some question when I use the SME_normalize function.

          Here is my code

          #read dataadata=sc.read_h5ad(Datapath)
          count_matrix=adata.Xspatial=adata.obs[['x','y']]
          spatial.rename(columns={'x':'imagerow','y':'imagecol'},inplace=True)
          data=st.create_stlearn(count=count_matrix,spatial=spatial,library_id=f'{sample}', scale=1,background_color="white")
          data.obs['array_row']=spatial.iloc[:,0]
          data.obs['array_col']=spatial.iloc[:,1]
          data.var_names_make_unique()
          data.layers['raw_count']=data.X#tile dataTILE_PATH=Path(os.path.join(outDir,'{0}_tile'.format(sample)))
          TILE_PATH.mkdir(parents=True,exist_ok=True)
          #tile morphologyst.pp.tiling(data,TILE_PATH,crop_size=40)
          st.pp.extract_feature(data)
          ###process datast.pp.normalize_total(data)
          st.pp.log1p(data)
          #gene pca dimention reductionst.em.run_pca(data,n_comps=50,random_state=0)
          #stSME to normalise log transformed datast.spatial.SME.SME_normalize(data, use_data="raw",weights="weights_matrix_gd_md")

          I always get this error:

          Extract feature: 100%|████████████████████████████████████ [ time left: 00:00 ]
          Traceback (most recent call last):
          File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 57, in
          ME_normalize(Datapath=adata,outDir=outdir,sample=sample)
          File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 41, in ME_normalize
          st.spatial.SME.SME_normalize(data, use_data="raw",weights = "weights_matrix_gd_md")
          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/normalize.py", line 60, in SME_normalize
          calculate_weight_matrix(adata, platform=platform)
          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/_weighting_matrix.py", line 48, in calculate_weight_matrix
          reg_row = LinearRegression().fit(array_row.values.reshape(-1, 1), img_row)
          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 1152, in wrapper
          return fit_method(estimator, *args, **kwargs)
          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/linear_model/_base.py", line 678, in fit
          X, y = self._validate_data(
          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 622, in _validate_data
          X, y = check_X_y(X, y, **check_params)
          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 1146, in check_X_y
          X = check_array(
          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 957, in check_array
          _assert_all_finite(
          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 122, in _assert_all_finite
          _assert_all_finite_element_wise(
          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 171, in _assert_all_finite_element_wise
          raise ValueError(msg_err)
          ValueError: Input X contains NaN.
          LinearRegression does not accept missing values encoded as NaN natively. For supervised learning, you might want to consider sklearn.ensemble.HistGradientBoostingClassifier and Regressor which accept missing values encoded as NaNs natively. Alternatively, it is possible to preprocess the data, for instance by using an imputer transformer in a pipeline or drop samples with missing values. See https://scikit-learn.org/stable/modules/impute.html You can find a list of all estimators that handle NaN values at the following page: https://scikit-learn.org/stable/modules/impute.html#estimators-that-handle-nan-values

          #================================================================================
          And I checked my data ,it does not have NAN value

          >>>np.any(np.isnan(data.X.toarray()))
          False>>>np.all(np.isfinite(data.X.toarray()))
          True# same as count_matrix>>>np.isnan(count_matrix.toarray()).any()
          False>>>np.isfinite(count_matrix.toarray()).any()
          True

          Now, I don't know what should i do. I'd really appreciate it if you could help me with this problem

          Metadata

          Metadata

          Assignees

          No one assigned

            Labels

            No labels
            No labels

            Projects

            No projects

              Milestone

              No milestone

              Relationships

              None yet

              Development

              No branches or pull requests

              Issue actions

              , 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' st.spatial.SME.SME_normalize: ValueError: Input X contains NaN. · Issue #310 · BiomedicalMachineLearning/stLearn · GitHub
              Skip to content

              st.spatial.SME.SME_normalize: ValueError: Input X contains NaN. #310

              Description

              @liangyuli12138

              Hi, tks for developing this useful tool. I encounter some question when I use the SME_normalize function.

              Here is my code

              #read dataadata=sc.read_h5ad(Datapath)
              count_matrix=adata.Xspatial=adata.obs[['x','y']]
              spatial.rename(columns={'x':'imagerow','y':'imagecol'},inplace=True)
              data=st.create_stlearn(count=count_matrix,spatial=spatial,library_id=f'{sample}', scale=1,background_color="white")
              data.obs['array_row']=spatial.iloc[:,0]
              data.obs['array_col']=spatial.iloc[:,1]
              data.var_names_make_unique()
              data.layers['raw_count']=data.X#tile dataTILE_PATH=Path(os.path.join(outDir,'{0}_tile'.format(sample)))
              TILE_PATH.mkdir(parents=True,exist_ok=True)
              #tile morphologyst.pp.tiling(data,TILE_PATH,crop_size=40)
              st.pp.extract_feature(data)
              ###process datast.pp.normalize_total(data)
              st.pp.log1p(data)
              #gene pca dimention reductionst.em.run_pca(data,n_comps=50,random_state=0)
              #stSME to normalise log transformed datast.spatial.SME.SME_normalize(data, use_data="raw",weights="weights_matrix_gd_md")

              I always get this error:

              Extract feature: 100%|████████████████████████████████████ [ time left: 00:00 ]
              Traceback (most recent call last):
              File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 57, in
              ME_normalize(Datapath=adata,outDir=outdir,sample=sample)
              File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 41, in ME_normalize
              st.spatial.SME.SME_normalize(data, use_data="raw",weights = "weights_matrix_gd_md")
              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/normalize.py", line 60, in SME_normalize
              calculate_weight_matrix(adata, platform=platform)
              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/_weighting_matrix.py", line 48, in calculate_weight_matrix
              reg_row = LinearRegression().fit(array_row.values.reshape(-1, 1), img_row)
              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 1152, in wrapper
              return fit_method(estimator, *args, **kwargs)
              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/linear_model/_base.py", line 678, in fit
              X, y = self._validate_data(
              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 622, in _validate_data
              X, y = check_X_y(X, y, **check_params)
              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 1146, in check_X_y
              X = check_array(
              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 957, in check_array
              _assert_all_finite(
              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 122, in _assert_all_finite
              _assert_all_finite_element_wise(
              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 171, in _assert_all_finite_element_wise
              raise ValueError(msg_err)
              ValueError: Input X contains NaN.
              LinearRegression does not accept missing values encoded as NaN natively. For supervised learning, you might want to consider sklearn.ensemble.HistGradientBoostingClassifier and Regressor which accept missing values encoded as NaNs natively. Alternatively, it is possible to preprocess the data, for instance by using an imputer transformer in a pipeline or drop samples with missing values. See https://scikit-learn.org/stable/modules/impute.html You can find a list of all estimators that handle NaN values at the following page: https://scikit-learn.org/stable/modules/impute.html#estimators-that-handle-nan-values

              #================================================================================
              And I checked my data ,it does not have NAN value

              >>>np.any(np.isnan(data.X.toarray()))
              False>>>np.all(np.isfinite(data.X.toarray()))
              True# same as count_matrix>>>np.isnan(count_matrix.toarray()).any()
              False>>>np.isfinite(count_matrix.toarray()).any()
              True

              Now, I don't know what should i do. I'd really appreciate it if you could help me with this problem

              Metadata

              Metadata

              Assignees

              No one assigned

                Labels

                No labels
                No labels

                Projects

                No projects

                  Milestone

                  No milestone

                  Relationships

                  None yet

                  Development

                  No branches or pull requests

                  Issue actions

                  , 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' st.spatial.SME.SME_normalize: ValueError: Input X contains NaN. · Issue #310 · BiomedicalMachineLearning/stLearn · GitHub
                  Skip to content

                  st.spatial.SME.SME_normalize: ValueError: Input X contains NaN. #310

                  Description

                  @liangyuli12138

                  Hi, tks for developing this useful tool. I encounter some question when I use the SME_normalize function.

                  Here is my code

                  #read dataadata=sc.read_h5ad(Datapath)
                  count_matrix=adata.Xspatial=adata.obs[['x','y']]
                  spatial.rename(columns={'x':'imagerow','y':'imagecol'},inplace=True)
                  data=st.create_stlearn(count=count_matrix,spatial=spatial,library_id=f'{sample}', scale=1,background_color="white")
                  data.obs['array_row']=spatial.iloc[:,0]
                  data.obs['array_col']=spatial.iloc[:,1]
                  data.var_names_make_unique()
                  data.layers['raw_count']=data.X#tile dataTILE_PATH=Path(os.path.join(outDir,'{0}_tile'.format(sample)))
                  TILE_PATH.mkdir(parents=True,exist_ok=True)
                  #tile morphologyst.pp.tiling(data,TILE_PATH,crop_size=40)
                  st.pp.extract_feature(data)
                  ###process datast.pp.normalize_total(data)
                  st.pp.log1p(data)
                  #gene pca dimention reductionst.em.run_pca(data,n_comps=50,random_state=0)
                  #stSME to normalise log transformed datast.spatial.SME.SME_normalize(data, use_data="raw",weights="weights_matrix_gd_md")

                  I always get this error:

                  Extract feature: 100%|████████████████████████████████████ [ time left: 00:00 ]
                  Traceback (most recent call last):
                  File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 57, in
                  ME_normalize(Datapath=adata,outDir=outdir,sample=sample)
                  File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 41, in ME_normalize
                  st.spatial.SME.SME_normalize(data, use_data="raw",weights = "weights_matrix_gd_md")
                  File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/normalize.py", line 60, in SME_normalize
                  calculate_weight_matrix(adata, platform=platform)
                  File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/_weighting_matrix.py", line 48, in calculate_weight_matrix
                  reg_row = LinearRegression().fit(array_row.values.reshape(-1, 1), img_row)
                  File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 1152, in wrapper
                  return fit_method(estimator, *args, **kwargs)
                  File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/linear_model/_base.py", line 678, in fit
                  X, y = self._validate_data(
                  File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 622, in _validate_data
                  X, y = check_X_y(X, y, **check_params)
                  File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 1146, in check_X_y
                  X = check_array(
                  File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 957, in check_array
                  _assert_all_finite(
                  File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 122, in _assert_all_finite
                  _assert_all_finite_element_wise(
                  File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 171, in _assert_all_finite_element_wise
                  raise ValueError(msg_err)
                  ValueError: Input X contains NaN.
                  LinearRegression does not accept missing values encoded as NaN natively. For supervised learning, you might want to consider sklearn.ensemble.HistGradientBoostingClassifier and Regressor which accept missing values encoded as NaNs natively. Alternatively, it is possible to preprocess the data, for instance by using an imputer transformer in a pipeline or drop samples with missing values. See https://scikit-learn.org/stable/modules/impute.html You can find a list of all estimators that handle NaN values at the following page: https://scikit-learn.org/stable/modules/impute.html#estimators-that-handle-nan-values

                  #================================================================================
                  And I checked my data ,it does not have NAN value

                  >>>np.any(np.isnan(data.X.toarray()))
                  False>>>np.all(np.isfinite(data.X.toarray()))
                  True# same as count_matrix>>>np.isnan(count_matrix.toarray()).any()
                  False>>>np.isfinite(count_matrix.toarray()).any()
                  True

                  Now, I don't know what should i do. I'd really appreciate it if you could help me with this problem

                  Metadata

                  Metadata

                  Assignees

                  No one assigned

                    Labels

                    No labels
                    No labels

                    Projects

                    No projects

                      Milestone

                      No milestone

                      Relationships

                      None yet

                      Development

                      No branches or pull requests

                      Issue actions

                      , 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' st.spatial.SME.SME_normalize: ValueError: Input X contains NaN. · Issue #310 · BiomedicalMachineLearning/stLearn · GitHub
                      Skip to content

                      st.spatial.SME.SME_normalize: ValueError: Input X contains NaN. #310

                      Description

                      @liangyuli12138

                      Hi, tks for developing this useful tool. I encounter some question when I use the SME_normalize function.

                      Here is my code

                      #read dataadata=sc.read_h5ad(Datapath)
                      count_matrix=adata.Xspatial=adata.obs[['x','y']]
                      spatial.rename(columns={'x':'imagerow','y':'imagecol'},inplace=True)
                      data=st.create_stlearn(count=count_matrix,spatial=spatial,library_id=f'{sample}', scale=1,background_color="white")
                      data.obs['array_row']=spatial.iloc[:,0]
                      data.obs['array_col']=spatial.iloc[:,1]
                      data.var_names_make_unique()
                      data.layers['raw_count']=data.X#tile dataTILE_PATH=Path(os.path.join(outDir,'{0}_tile'.format(sample)))
                      TILE_PATH.mkdir(parents=True,exist_ok=True)
                      #tile morphologyst.pp.tiling(data,TILE_PATH,crop_size=40)
                      st.pp.extract_feature(data)
                      ###process datast.pp.normalize_total(data)
                      st.pp.log1p(data)
                      #gene pca dimention reductionst.em.run_pca(data,n_comps=50,random_state=0)
                      #stSME to normalise log transformed datast.spatial.SME.SME_normalize(data, use_data="raw",weights="weights_matrix_gd_md")

                      I always get this error:

                      Extract feature: 100%|████████████████████████████████████ [ time left: 00:00 ]
                      Traceback (most recent call last):
                      File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 57, in
                      ME_normalize(Datapath=adata,outDir=outdir,sample=sample)
                      File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 41, in ME_normalize
                      st.spatial.SME.SME_normalize(data, use_data="raw",weights = "weights_matrix_gd_md")
                      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/normalize.py", line 60, in SME_normalize
                      calculate_weight_matrix(adata, platform=platform)
                      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/_weighting_matrix.py", line 48, in calculate_weight_matrix
                      reg_row = LinearRegression().fit(array_row.values.reshape(-1, 1), img_row)
                      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 1152, in wrapper
                      return fit_method(estimator, *args, **kwargs)
                      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/linear_model/_base.py", line 678, in fit
                      X, y = self._validate_data(
                      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 622, in _validate_data
                      X, y = check_X_y(X, y, **check_params)
                      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 1146, in check_X_y
                      X = check_array(
                      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 957, in check_array
                      _assert_all_finite(
                      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 122, in _assert_all_finite
                      _assert_all_finite_element_wise(
                      File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 171, in _assert_all_finite_element_wise
                      raise ValueError(msg_err)
                      ValueError: Input X contains NaN.
                      LinearRegression does not accept missing values encoded as NaN natively. For supervised learning, you might want to consider sklearn.ensemble.HistGradientBoostingClassifier and Regressor which accept missing values encoded as NaNs natively. Alternatively, it is possible to preprocess the data, for instance by using an imputer transformer in a pipeline or drop samples with missing values. See https://scikit-learn.org/stable/modules/impute.html You can find a list of all estimators that handle NaN values at the following page: https://scikit-learn.org/stable/modules/impute.html#estimators-that-handle-nan-values

                      #================================================================================
                      And I checked my data ,it does not have NAN value

                      >>>np.any(np.isnan(data.X.toarray()))
                      False>>>np.all(np.isfinite(data.X.toarray()))
                      True# same as count_matrix>>>np.isnan(count_matrix.toarray()).any()
                      False>>>np.isfinite(count_matrix.toarray()).any()
                      True

                      Now, I don't know what should i do. I'd really appreciate it if you could help me with this problem

                      Metadata

                      Metadata

                      Assignees

                      No one assigned

                        Labels

                        No labels
                        No labels

                        Projects

                        No projects

                          Milestone

                          No milestone

                          Relationships

                          None yet

                          Development

                          No branches or pull requests

                          Issue actions

                          , 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' st.spatial.SME.SME_normalize: ValueError: Input X contains NaN. · Issue #310 · BiomedicalMachineLearning/stLearn · GitHub
                          Skip to content

                          st.spatial.SME.SME_normalize: ValueError: Input X contains NaN. #310

                          Description

                          @liangyuli12138

                          Hi, tks for developing this useful tool. I encounter some question when I use the SME_normalize function.

                          Here is my code

                          #read dataadata=sc.read_h5ad(Datapath)
                          count_matrix=adata.Xspatial=adata.obs[['x','y']]
                          spatial.rename(columns={'x':'imagerow','y':'imagecol'},inplace=True)
                          data=st.create_stlearn(count=count_matrix,spatial=spatial,library_id=f'{sample}', scale=1,background_color="white")
                          data.obs['array_row']=spatial.iloc[:,0]
                          data.obs['array_col']=spatial.iloc[:,1]
                          data.var_names_make_unique()
                          data.layers['raw_count']=data.X#tile dataTILE_PATH=Path(os.path.join(outDir,'{0}_tile'.format(sample)))
                          TILE_PATH.mkdir(parents=True,exist_ok=True)
                          #tile morphologyst.pp.tiling(data,TILE_PATH,crop_size=40)
                          st.pp.extract_feature(data)
                          ###process datast.pp.normalize_total(data)
                          st.pp.log1p(data)
                          #gene pca dimention reductionst.em.run_pca(data,n_comps=50,random_state=0)
                          #stSME to normalise log transformed datast.spatial.SME.SME_normalize(data, use_data="raw",weights="weights_matrix_gd_md")

                          I always get this error:

                          Extract feature: 100%|████████████████████████████████████ [ time left: 00:00 ]
                          Traceback (most recent call last):
                          File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 57, in
                          ME_normalize(Datapath=adata,outDir=outdir,sample=sample)
                          File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 41, in ME_normalize
                          st.spatial.SME.SME_normalize(data, use_data="raw",weights = "weights_matrix_gd_md")
                          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/normalize.py", line 60, in SME_normalize
                          calculate_weight_matrix(adata, platform=platform)
                          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/_weighting_matrix.py", line 48, in calculate_weight_matrix
                          reg_row = LinearRegression().fit(array_row.values.reshape(-1, 1), img_row)
                          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 1152, in wrapper
                          return fit_method(estimator, *args, **kwargs)
                          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/linear_model/_base.py", line 678, in fit
                          X, y = self._validate_data(
                          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 622, in _validate_data
                          X, y = check_X_y(X, y, **check_params)
                          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 1146, in check_X_y
                          X = check_array(
                          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 957, in check_array
                          _assert_all_finite(
                          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 122, in _assert_all_finite
                          _assert_all_finite_element_wise(
                          File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 171, in _assert_all_finite_element_wise
                          raise ValueError(msg_err)
                          ValueError: Input X contains NaN.
                          LinearRegression does not accept missing values encoded as NaN natively. For supervised learning, you might want to consider sklearn.ensemble.HistGradientBoostingClassifier and Regressor which accept missing values encoded as NaNs natively. Alternatively, it is possible to preprocess the data, for instance by using an imputer transformer in a pipeline or drop samples with missing values. See https://scikit-learn.org/stable/modules/impute.html You can find a list of all estimators that handle NaN values at the following page: https://scikit-learn.org/stable/modules/impute.html#estimators-that-handle-nan-values

                          #================================================================================
                          And I checked my data ,it does not have NAN value

                          >>>np.any(np.isnan(data.X.toarray()))
                          False>>>np.all(np.isfinite(data.X.toarray()))
                          True# same as count_matrix>>>np.isnan(count_matrix.toarray()).any()
                          False>>>np.isfinite(count_matrix.toarray()).any()
                          True

                          Now, I don't know what should i do. I'd really appreciate it if you could help me with this problem

                          Metadata

                          Metadata

                          Assignees

                          No one assigned

                            Labels

                            No labels
                            No labels

                            Projects

                            No projects

                              Milestone

                              No milestone

                              Relationships

                              None yet

                              Development

                              No branches or pull requests

                              Issue actions

                              , 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); st.spatial.SME.SME_normalize: ValueError: Input X contains NaN. · Issue #310 · BiomedicalMachineLearning/stLearn · GitHub
                              Skip to content

                              st.spatial.SME.SME_normalize: ValueError: Input X contains NaN. #310

                              Description

                              @liangyuli12138

                              Hi, tks for developing this useful tool. I encounter some question when I use the SME_normalize function.

                              Here is my code

                              #read dataadata=sc.read_h5ad(Datapath)
                              count_matrix=adata.Xspatial=adata.obs[['x','y']]
                              spatial.rename(columns={'x':'imagerow','y':'imagecol'},inplace=True)
                              data=st.create_stlearn(count=count_matrix,spatial=spatial,library_id=f'{sample}', scale=1,background_color="white")
                              data.obs['array_row']=spatial.iloc[:,0]
                              data.obs['array_col']=spatial.iloc[:,1]
                              data.var_names_make_unique()
                              data.layers['raw_count']=data.X#tile dataTILE_PATH=Path(os.path.join(outDir,'{0}_tile'.format(sample)))
                              TILE_PATH.mkdir(parents=True,exist_ok=True)
                              #tile morphologyst.pp.tiling(data,TILE_PATH,crop_size=40)
                              st.pp.extract_feature(data)
                              ###process datast.pp.normalize_total(data)
                              st.pp.log1p(data)
                              #gene pca dimention reductionst.em.run_pca(data,n_comps=50,random_state=0)
                              #stSME to normalise log transformed datast.spatial.SME.SME_normalize(data, use_data="raw",weights="weights_matrix_gd_md")

                              I always get this error:

                              Extract feature: 100%|████████████████████████████████████ [ time left: 00:00 ]
                              Traceback (most recent call last):
                              File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 57, in
                              ME_normalize(Datapath=adata,outDir=outdir,sample=sample)
                              File "/share/home/bgi_lily/Stu/Data/code/Rusedtile.py", line 41, in ME_normalize
                              st.spatial.SME.SME_normalize(data, use_data="raw",weights = "weights_matrix_gd_md")
                              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/normalize.py", line 60, in SME_normalize
                              calculate_weight_matrix(adata, platform=platform)
                              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/stlearn/spatials/SME/_weighting_matrix.py", line 48, in calculate_weight_matrix
                              reg_row = LinearRegression().fit(array_row.values.reshape(-1, 1), img_row)
                              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 1152, in wrapper
                              return fit_method(estimator, *args, **kwargs)
                              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/linear_model/_base.py", line 678, in fit
                              X, y = self._validate_data(
                              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/base.py", line 622, in _validate_data
                              X, y = check_X_y(X, y, **check_params)
                              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 1146, in check_X_y
                              X = check_array(
                              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 957, in check_array
                              _assert_all_finite(
                              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 122, in _assert_all_finite
                              _assert_all_finite_element_wise(
                              File "/share/appspace_data/shared_groups/usersenv/stlearn/lib/python3.8/site-packages/sklearn/utils/validation.py", line 171, in _assert_all_finite_element_wise
                              raise ValueError(msg_err)
                              ValueError: Input X contains NaN.
                              LinearRegression does not accept missing values encoded as NaN natively. For supervised learning, you might want to consider sklearn.ensemble.HistGradientBoostingClassifier and Regressor which accept missing values encoded as NaNs natively. Alternatively, it is possible to preprocess the data, for instance by using an imputer transformer in a pipeline or drop samples with missing values. See https://scikit-learn.org/stable/modules/impute.html You can find a list of all estimators that handle NaN values at the following page: https://scikit-learn.org/stable/modules/impute.html#estimators-that-handle-nan-values

                              #================================================================================
                              And I checked my data ,it does not have NAN value

                              >>>np.any(np.isnan(data.X.toarray()))
                              False>>>np.all(np.isfinite(data.X.toarray()))
                              True# same as count_matrix>>>np.isnan(count_matrix.toarray()).any()
                              False>>>np.isfinite(count_matrix.toarray()).any()
                              True

                              Now, I don't know what should i do. I'd really appreciate it if you could help me with this problem

                              Metadata

                              Metadata

                              Assignees

                              No one assigned

                                Labels

                                No labels
                                No labels

                                Projects

                                No projects

                                  Milestone

                                  No milestone

                                  Relationships

                                  None yet

                                  Development

                                  No branches or pull requests

                                  Issue actions