df.head()
0.0000 0.0000.1 0.0000.2 0.0000.3 0.0000.4 0.0000.5 1.0000 1.0000.1 \
0 0.0 0.0 0.0 0.0 0.0 1.0 1.0 1.0
1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
2 0.0 0.0 0.0 0.0 0.0 0.0 1.0 1.0
3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
4 0.0 0.0 0.0 0.0 1.0 1.0 1.0 1.0
1.0000.2 1.0000.3 ... 1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
0 1.0 1.0 ... 1 0 0 0 0 0 0 0 0 0
1 0.0 1.0 ... 1 0 0 0 0 0 0 0 0 0
2 1.0 1.0 ... 1 0 0 0 0 0 0 0 0 0
3 0.0 1.0 ... 1 0 0 0 0 0 0 0 0 0
4 1.0 1.0 ... 1 0 0 0 0 0 0 0 0 0
[5 rows x 266 columns]
由于DataFrame有266列,所以我尝试使用lambda和for循环将数字指定为列名。。。。使用以下代码:
^{pr2}$
但是我得到了奇怪的列名,比如:>>> df.head(2)
. at 0x04F4E588> \
0 0.0
1 0.0
. at 0x04F4E618> \
0 0.0
1 0.0
. at 0x04F4E660> \
0 0.0
1 0.0
如果删除括号,则代码将引发语法错误:>>> df = pd.read_csv("http://archive.ics.uci.edu/ml/machine-learning-databases/semeion/semeion.data", delimiter = r"\s+",
names = lambda x: x for x in range(0,266) )
SyntaxError: invalid syntax
有人能告诉我:
1)如何将列名作为数字。。。从0到266
2)如果我得到一个以第一行作为列名的DataFrame,如何在不丢失第一行的情况下向下推并添加新的列名?在
TIA公司