如何从列中的所有数字中删除\ xa3?

时间:2018-06-10 16:51:04

标签: python pandas

我有一个数据帧列,使用pd.read_csv从csv文件读入。当我查看数字时,他们看起来都像:

df['Amount'][0]
Out[4]: '\xa3128.23'

他们已经为\xa3预先准备好了,因此也不会被解释为花车。

如何剥离\xa3并使它们浮动?

2 个答案:

答案 0 :(得分:4)

我认为需要replace

df['Amount'].str.replace('\xa3', '').astype(float)

£df['Amount'].str.lstrip('£').astype(float)

df = pd.read_csv("your_data_set_path", encoding='utf-8') 

由于@csevier指出似乎编码问题,解决方法是:

df['Amount'] = df['Amount'].str.lstrip('£').astype(float)

然后:

  String path= Environment.getExternalStorageDirectory()+File.separator+"Cloud_data"+File.separator+"Images";
                file= new File(path);
                if(!file.isDirectory())
                {


                    file.mkdirs();
                }

 storageReference2.getFile(file)
                        .addOnSuccessListener(new OnSuccessListener<FileDownloadTask.TaskSnapshot>() {
                            @Override
                            public void onSuccess(FileDownloadTask.TaskSnapshot taskSnapshot) {
                                Toast.makeText(DownloadFiles.this, "path"+file, Toast.LENGTH_LONG).show();
                                text1.setText(String.valueOf(file)+"."+taskSnapshot.getStorage());
                                Toast.makeText(DownloadFiles.this, "File Downloaded Successfully", Toast.LENGTH_SHORT).show();
                            }
                        })

.addOnProgressListener(new OnProgressListener<FileDownloadTask.TaskSnapshot>() {
                    @Override
                    public void onProgress(FileDownloadTask.TaskSnapshot taskSnapshot) {
                        double progress=(100.0*taskSnapshot.getBytesTransferred()/taskSnapshot.getTotalByteCount());
                        Toast.makeText(DownloadFiles.this, "Progress: "+(int)progress+"%", Toast.LENGTH_SHORT).show();

                    }
                });

答案 1 :(得分:1)

正如@jezrael和我正在讨论他的回答一样,用pandas处理导入时的编码可能会更好,而不是循环剥离结果。这是因为额外的循环不能很好地扩展到更大的数据集,并且可能导致一些缓慢的运行时间。

 pd.read_csv("your_data_set_path", encoding='utf-8') #use appropriate encoding.