[英]Python: Load CSV, first column as row names, first row as column names
I want to load a CSV file using Python2.7, in which the first row contains column names and the first column contains row names. 我想使用Python2.7加载CSV文件,其中第一行包含列名,第一列包含行名。
My CSV file looks like beneath. 我的CSV文件如下所示。
A B C D
a 1. 2. 3. 4.
b 5. 6. 7. 8.
I don't know how to do that with numpy or pandas. 我不知道如何用numpy或pandas来做。 Can someone enlighten me ?
有人可以启发我吗? Thanks !
谢谢 !
You can use read_csv
with separator s\\+
- arbitrary whitespace: 您可以将
read_csv
与分隔符s\\+
-任意空格一起使用:
import pandas as pd
import io
temp=u"""A B C D
a 1. 2. 3. 4.
b 5. 6. 7. 8."""
#after testing replace io.StringIO(temp) to filename
df = pd.read_csv(io.StringIO(temp), sep="\s+")
print df
A B C D
a 1.0 2.0 3.0 4.0
b 5.0 6.0 7.0 8.0
You could use pd.read_csv
with regex separator \\s+
: 您可以将
pd.read_csv
与正则表达式分隔符\\s+
:
import pandas as pd
In [4]: pd.read_csv('file.csv', sep='\s+')
Out[4]:
A B C D
a 1.0 2.0 3.0 4.0
b 5.0 6.0 7.0 8.0
Or you could use delim_whitespace
argument for that: 或者您可以
delim_whitespace
使用delim_whitespace
参数:
In [5]: pd.read_csv('file.csv', delim_whitespace=True)
Out[5]:
A B C D
a 1.0 2.0 3.0 4.0
b 5.0 6.0 7.0 8.0
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.