test3.py 955 B

1234567891011121314151617181920212223242526272829303132
  1. import pandas as pd
  2. import rpy2.robjects.packages as rpackages
  3. # import rpy2.robjects.pandas2ri as pandas2ri
  4. # from rpy2.robjects import pandas2ri, r
  5. import rpy2.robjects.pandas2ri as pandas2ri
  6. # maf_data = pd.read_csv('example.maf', sep='\t')
  7. maf_data = pd.read_csv('example.maf', sep='\t', comment='#')
  8. # 将pandas DataFrame转换为R的数据框
  9. pandas2ri.activate()
  10. # r_maf_data = pandas2ri.py2ri(maf_data)
  11. # 将 pandas.DataFrame 转换为 R 中的数据框对象
  12. def df_to_r_dataframe(df):
  13. r_dataframe = pandas2ri.py2ro(df)
  14. return r_dataframe
  15. print(df_to_r_dataframe(maf_data))
  16. # 加载VariantAnnotation包
  17. utils = rpackages.importr('utils')
  18. utils.chooseCRANmirror(ind=1)
  19. utils.install_packages('VariantAnnotation')
  20. variantannotation = rpackages.importr('VariantAnnotation')
  21. # 将R的数据框转换为VariantAnnotation类对象
  22. maftools_input = variantannotation.data.frame_to_VariantAnnotation(r_maf_data)
  23. print(22, maftools_input)