我有一个简单的ndarray,我想导出到csv,即我只想要一列逗号分隔值。原因是我必须根据数组中的值从另一个df中对值进行排序。我的数据如下:
url='https://raw.githubusercontent.com/108michael/ms_thesis/master/rgdpconc.csv'
result=pd.read_csv(url, index_col=0)
uniq=result.IndustryClassification.unique()
#uniq.to_csv('rgdp_uniq_indstry_class.csv')
uniq #this is my ndarray
答案 0 :(得分:4)
创建ndarray到熊猫数据框,然后使用to_csv
pandas方法。
uniq = pd.Dataframe({'var1':uniq})
uniq.to_csv('name_of_file')
默认分隔符为','
,但您可以使用参数sep指定另一个分隔符
uniq.to_csv('name_of_file', sep =' ') #use whitespace for example
另外请记住,如果您对保留浮点精度感兴趣,参数fmt
非常重要。例如
uniq.to_csv('name_of_file', fmt='%1.3f')
答案 1 :(得分:3)
我认为您需要创建DataFrame
,然后将其写为to_csv
:
df = pd.DataFrame({'unique':uniq})
df.to_csv('rgdp_uniq_indstry_class.csv')
或Series
to_csv
:
s = pd.Series(uniq)
s.to_csv('rgdp_uniq_indstry_class.csv')
答案 2 :(得分:1)
你不能给ndarray对象to_csv.Because因为他们没有这样的方法。所以将它转换为pandas数据帧并给出csv输出。
import pandas as pd
df = pd.DataFrame(uniq,columns=['suitable column name'])
df.to_csv('path+csvfilename',index=False) #### index=False will remove the extra index column in the csv