亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何確保 R 和 Python 腳本使用相同的排序規則?

如何確保 R 和 Python 腳本使用相同的排序規則?

慕姐8265434 2022-12-20 14:28:32
我將 R 3.6 與 dplyr 1.4.2 一起使用,將 Python 3.7 與 Pandas 1.0.3 一起使用。我需要確保我的 R 和 Python 腳本都能以相同的順序對相同的字符串向量進行排序。但是,在我的本地環境中情況并非如此:在 R 中:library(dplyr)df <- data.frame(      x = c('abc(_01', 'aaa_05', 'abc_01', 'abc_01', 'abc_01', 'abc_01', NA, 'abc_01', 'abc_02', 'abc_02', 'abc_03'))df %>% arrange(x)生成:         x1   aaa_052   abc_013   abc_014   abc_015   abc_016   abc_017   abc_028   abc_029   abc_0310 abc(_0111      NA在 Python 中:import pandas as pdimport numpy as npdf = pd.DataFrame({'x': ['abc(_01', 'aaa_05', 'abc_01', 'abc_01', 'abc_01', 'abc_01', np.nan, 'abc_01', 'abc_02', 'abc_02', 'abc_03']})df.sort_values(['x']).reset_index(drop=True)生成:          x0    aaa_051   abc(_012    abc_013    abc_014    abc_015    abc_016    abc_017    abc_028    abc_029    abc_0310      NaN我相信這是由于 Python 和 R 使用不同的排序規則造成的。如果是這種情況,我如何配置兩種語言以使用相同的排序規則?
查看完整描述

1 回答

?
白豬掌柜的

TA貢獻1893條經驗 獲得超10個贊

為了保證 Python 和 R shell 使用相同的排序規則,在創建數據幀之前設置相同的排序規則。


例如。:


在 R 中:


Sys.setlocale(category="LC_COLLATE", locale="C")

Sys.getlocale(category="LC_COLLATE")

[1] “丙”


在 Python 中:


import locale

locale.setlocale(locale.LC_COLLATE, "C")

locale.getlocale(locale.LC_COLLATE)

(不,不)


查看完整回答
反對 回復 2022-12-20
  • 1 回答
  • 0 關注
  • 93 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號