![](/img/trans.png)
[英]How to convert the element in a pandas.dataframe to np.float while use pandas.read_csv to read csv file?
[英]Use pandas.read_csv to convert comma seperate string list into dataframe
如何使用Pandas read_csv将大列表快速转换为数据框?
import Pandas as pd
x = '1,2,3,4,5,7,8,9'
df = pd.read_csv(x)
我知道我可以用逗号分割字符串->放入列表中->转换为数据帧,但想知道是否可以使用pd.read_csv做到这一点呢?
x = '1,2,3,4,5,7,8,9'
df = pd.read_csv(pd.io.common.StringIO(x), header=None)
df
0 1 2 3 4 5 7 8
0 1 2 3 4 5 7 8 9
是使用pd.read_csv
可以做的最好的pd.read_csv
考虑更大的字符串
y = '\n'.join([','.join(['0,1,2,3,4,5,6,7,8,9'] * 100)] * 1000)
并比较这两个选项的时间
%timeit pd.DataFrame([l.split(',') for l in y.split('\n')]).astype(int)
%timeit pd.read_csv(pd.io.common.StringIO(y), header=None)
1 loop, best of 3: 200 ms per loop
10 loops, best of 3: 125 ms per loop
如果我们需要做的只是分割字符串, split
会更快。 但是, pd.read_csv
为我们做的一件事是解析整数。 拆分后必须这样做时,额外的开销会变得很昂贵。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.