熊猫列的 To_CSV 唯一值[重复]
Posted
技术标签:
【中文标题】熊猫列的 To_CSV 唯一值[重复]【英文标题】:To_CSV unique values of a pandas column [duplicate] 【发布时间】:2016-07-06 13:17:06 【问题描述】:当我使用以下内容时:
import pandas as pd
data = pd.read_csv('C:/Users/Z/OneDrive/Python/Exploratory Data/Aramark/ARMK.csv')
x = data.iloc[:,2]
y = pd.unique(x)
y.to_csv('yah.csv')
我收到以下错误:
AttributeError: 'numpy.ndarray' object has no attribute 'to_csv'
【问题讨论】:
to_csv
是 pandas.DataFrame method,而不是 numpy 数组方法。将您的数据转换为 pandas DataFrame 或使用适当的 numpy 方法。也许this'll be helpful
使用pd.read_csv,这不是panas.DataFrame吗?
嘘,你打败了我,@TadhgMcDonald-Jensen! :P
pd.unique()
返回numpy.ndarray
,因为错误非常明显。 print(type(y))
@ZJAY 显然不是(我相信口译员)。您可以随时在脚本中的各个位置调用 type(your_variable)
以查看数据类型
【参考方案1】:
IIUC,从数据框开始:
df = pd.DataFrame('a':[1,2,3,4,5,6],'b':['a','a','b','c','c','b'])
您可以通过以下方式获取列的唯一值:
g = df['b'].unique()
返回一个数组:
array(['a', 'b', 'c'], dtype=object)
要将其保存为 .csv 文件,我会将其转换为 Series
s:
In [22]: s = pd.Series(g)
In [23]: s
Out[23]:
0 a
1 b
2 c
dtype: object
所以你可以很容易地保存它:
In [24]: s.to_csv('file.csv')
希望对您有所帮助。
【讨论】:
【参考方案2】:np.unique
的 pandas 等效项是 drop_duplicates
method。
In [42]: x = pd.Series([1,2,1,3,2])
In [43]: y = x.drop_duplicates()
In [46]: y
Out[46]:
0 1
1 2
3 3
dtype: int64
注意drop_duplicates
返回一个Series,所以你可以调用它的to_csv
方法:
import pandas as pd
data = pd.read_csv('C:/Users/Z/OneDrive/Python/Exploratory Data/Aramark/ARMK.csv')
x = data.iloc[:,2]
y = x.drop_duplicates()
y.to_csv('yah.csv')
【讨论】:
以上是关于熊猫列的 To_CSV 唯一值[重复]的主要内容,如果未能解决你的问题,请参考以下文章
熊猫数据框:在固定其他列的列中提取具有特定标准/条件最小值的数据[重复]