【发布时间】:2021-04-26 20:31:06
【问题描述】:
我正在尝试使用 pandas 读取 excel 文件中的列并使用我的输入打印一个新列。我正在尝试将 3 字母代码转换为 1 字母代码。到目前为止,我已经编写了这段代码,但是当我运行它时,它不会在最后一列中打印任何内容。
import pandas as pd
df = pd.read_csv (r'C:\Users\User\Documents\Research\seqadv.csv')
print (df)
codes = []
for i in df['WT_RESIDUE']:
if i == 'ALA':
codes.append('A')
if i == 'ARG':
codes.append('R')
if i == 'ASN':
codes.append('N')
if i == 'ASP':
codes.append('D')
if i == 'CYS':
codes.append('C')
if i == 'GLU':
codes.append('E')
print (codes)
codes = df ['MUTATION_CODE']
df.to_csv(r'C:\Users\User\Documents\Research\seqadv3.csv')
【问题讨论】:
-
分配代码 = df ['MUTATION_CODE'] 应该颠倒过来。最好使用dataframe的apply方法。
-
最后一列仍然不会显示任何内容。我不知道如何应用数据框并从 excel 文件中读取
-
无循环:
m = {'ALA': 'A', 'ARG': 'R', 'ASN': 'N', 'ASP': 'D', 'CYS': 'C', 'GLU': 'E'},df['MUTATION_CODE'] = df['WT_RESIDUE'].map(m).fillna('')。 -
控制台说:"SyntaxError: cannot assign to dict display" 这是什么意思?
-
我看到你正在使用我的 sript :)。我认为你需要写: df['mulation_code'] = codes