Python中文
首页
教程
问答
标签
搜索
登录
注册
名称错误:使用函数时未定义名称“x”
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有3个数据帧,它们有相同的列名,我正在合并它们。第一列是我想要的数据帧。其余的列是years,我想在每个years中添加一个字母来区分数据帧。我可以手动完成,没有任何问题。但是当我试图定义一个函数时,我得到了以下错误</p> <blockquote> <p>NameError: name 'x' is not defined. </p> </blockquote> <p>这是我在没有定义函数的情况下的初步尝试。dfyears是我试图更改列名称的数据帧。第一列“City_State”,我想保持不变,其余的列我想根据数据帧在后面添加一个字母。在</p> <pre><code>dfyearlist = (dfyears.columns[1:].values.tolist()) dfcols = [(dfyears.columns[0])] for i in dfyearlist: dfcols.<a href="https://www.cnpython.com/list/append" class="inner-link">append</a>(i + 'r') dfyears.columns = dfcols </code></pre> <p>以下是我输出的前3行:</p> ^{pr2}$ <p>但当我试图定义一个函数时:</p> <pre><code>def changecolumnnames(s, x): templist = [s.columns[1:].values.tolist()] returnlist = [(s.columns[0])] for i in templist: returnlist.append(i + str(x)) s.columns = returnlist zillrentyears = changecolumnnames(zillrentyears, r) </code></pre> <p>我得到:</p> <blockquote> <p>NameError: name 'r' is not defined.</p> </blockquote> <p>不知道我做错了什么?在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p><code>r</code>是一个字符串,您试图将其作为变量传递。在</p> <p>您需要将您的函数改为<code>hangecolumnnames(zillrentyears, "r")</code>,然后在该函数中,您可以在不使用<code>str</code>的情况下调用<code>returnlist.append(i + x)</code>。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何合并多个PDF文件?
1 回答
如何合并多个xarray数据变量及其坐标?
10 回答
如何合并多个列中具有重复值的行
2 回答
如何合并多个唯一id
3 回答
如何合并多个图纸并使用图纸名称的名称重命名列名?
7 回答
如何合并多个字典并添加同一个键的值?(Python)
4 回答
如何合并多个搜索结果文件(pkl)以将它们全部打印在一起?
7 回答
如何合并多个数据帧
10 回答
如何合并多个数据帧并使用Pandas为假人添加列?
9 回答
如何合并多个数据帧并按时间戳排序
2 回答
如何合并多个数据帧的列表并用另一个lis标记每列
9 回答
如何合并多个数据框中的列
7 回答
如何合并多个文件?
2 回答
如何合并多个查询集?
7 回答
如何合并多个绘图?
2 回答
如何合并多个词典
3 回答
如何合并多个输入数据集(数据帧)?
6 回答
如何合并多条记录中拆分的文本行
10 回答
如何合并多索引列datafram
5 回答
如何合并多级(即多索引)数据帧?
7 回答