博文

polars 长宽格式转换

  import polars as pl # 创建示例数据(宽格式) df_wide = pl.DataFrame({     "id" : [ 1 , 2 , 3 ],     "name" : [ "Alice" , "Bob" , "Charlie" ],     "math" : [ 90 , 85 , 92 ],     "english" : [ 88 , 90 , 85 ],     "science" : [ 92 , 88 , 90 ] }) print ( "原始数据(宽格式):" ) print (df_wide) # 使用 melt() 转换为长格式 df_long = df_wide.unpivot(     index = [ "id" , "name" ],           # 保持不变的列     on = [ "math" , "english" , "science" ],   # 要转换的列     variable_name = "subject" ,           # 新的变量名列     value_name = "score"               # 新的值列 ) # 使用上面的长格式数据,转换回宽格式 df_back_to_wide = df_long.pivot(     values = "score" ,       # 用作值的列     index = [ "id" , "name" ], # 作为行索引的列     on = "subject"     # 作为列名的列 ) print ( "转换回宽格式:" ) print (df_back_to_wide)

polars

import polars as pl df = pl.read_csv(     "/mnt/c/Users/Administrator/Downloads/百日咳小于2月大于7岁接种1.csv" ,     schema_overrides = {         "编码" : pl.Utf8,         "出生日期" : pl.Date,         "百日咳接种日期" : pl.Date,     },   # 将编码列指定为字符串类型 ) df.filter(pl.col( "出生日期" ) > pl.date( 2025 , 1 , 25 )) df.glimpse() df.head() df.group_by(pl.col( "出生日期" )).agg(pl.col( "编码" ).n_unique()).sort( "出生日期" ) df.group_by(pl.col( "出生日期" )).agg(pl.col( "编码" ).count()).sort( "出生日期" ) df = pl.DataFrame(     {         "name" : [ "Alice" , "Bob" , "Charlie" , "David" ],         "department" : [ "HR" , "IT" , "Finance" , "IT" ],         "salary" : [ 70000 , 80000 , 120000 , 95000 ],     } ) df = df.with_columns(     [pl.col( "salary" ).cum_sum().over( "department" ).alias( ...

R安装包时强制使用系统环境

  # 临时退出 conda conda deactivate # 安装系统版本 sudo apt update sudo apt install r-base-dev libnlopt-dev # 在系统 R 中安装 R -e "install.packages('nloptr', repos='https://cloud.r-project.org/')" R -e "install.packages('lme4', repos='https://cloud.r-project.org/')"

rstudio server 修改用户登录设置

sudo vim /etc/rstudio/rserver.conf auth-required-user-group=sudo,analysts,admins,rstudio auth-minimum-user-id=100 查看用户组 group xuefliang 查看用户id id xuefliang

mesh builder

 library(fmesher) library(sf) library(ggplot2) create_adaptive_mesh <- function(sf_object,                                  inner_edge_ratio = 30,    # 增大内部边长比例(更密集)                                  outer_edge_ratio = 5,     # 减小外部边长比例(更稀疏)                                  inner_offset_ratio = 8,   # 减小内部偏移比例(内部区域更大)                                  outer_offset_ratio = 20,  # 增大外部偏移比例(外部区域相对更小)                                  cutoff_ratio = 80,        # 增大cutoff比例(避免过小三角形)         ...

ubuntu 安装中文字体

  #   sudo apt install fonts-noto-cjk theme_set ( theme_bw ( base_family = "Noto Sans CJK SC" ))

rstudio 用户没有 sudo 权限

  使用管理员账户编辑 sudoers 文件 : <BASH> sudo visudo 在文件中添加以下行 : <BASH> rstudio ALL= ( ALL:ALL ) ALL 保存并退出 (通常是 Ctrl+X,然后 Y,然后 Enter