CSV'de “taşıma dönüşü” ile hücreyi nasıl bölebilirim?

Giriş

Bir formül kullanmadan CSV dosyanızdaki hücreleri “taşıyıcı dönüşü” ile kolayca bölün. Yalnızca CSV dosyanızı yükleyin ve sonuçları saniyeler içinde alın. Zahmetsiz ve verimli işleme - şimdi deneyin!

CSV'de “taşıma dönüşü” ile hücreyi nasıl bölebilirim?

Çalışmamda sık sık bu tür CSV veya Excel dosyaları alıyorum. Belirli bir hücrede (sütun), diğerleri içeriği ayırıcı olarak “taşıma dönüşü” ile girerler. Bu hücreyi (sütunu) bir veya daha fazla hücreye (sütun) bölmem gerekiyor. Bu hücreleri bölmem ve sonra veri analizi yapmam gerekiyor. Yani soru şu: Bunu nasıl yapabilirim?

Yöntem A:Excel veya Google Elektronik Tablosu

Excel'deki bir hücreyi bir taşıyıcı dönüşüne göre bölmek için aşağıdaki formülü ayrı bir hücrede kullanabilirsiniz:


=IFERROR(TRIM(MID(SUBSTITUTE($A1,"\n",REPT(" ",LEN($A1))),(ROW(1:1)-1)*LEN($A1)+1,LEN($A1))), "")

Bu formül, YERİNE taşıyıcı dönüş karakterinin tüm oluşumlarını değiştirmek için işlev ( \ n ) orijinal hücre içeriğine eşit uzunlukta bir dizi boşlukla. The KIRPMAK işlevi daha sonra ekstra boşlukları kaldırmak için kullanılır ve ORTA işlevi, orijinal hücre içeriğinin her satırına karşılık gelen hücrenin içeriğini çıkarmak için kullanılır. En sonunda, the İFERROR işlev, bir hata oluşursa boş bir dize döndürmek için kullanılır.

Hücreyi birden çok hücreye bölmek için, bu formülü orijinal hücrenin hemen altındaki bir hücre aralığına kopyalamanız yeterlidir. Kopyalanan her hücre, orijinal hücreden bir satırın içeriğini içerecektir. Hücreyi belirli sayıda hücreye bölmek için, formülün kopyalandığı hücre aralığını ayarlayın.

Yöntem B:Python

Bir Excel elektronik tablosundaki hücreleri bir taşıyıcı dönüşüne göre bölmek için Python'u kullanabilirsiniz. Bunu yapmanın bir yolu pandalar Python'daki verilerle çalışmak için üst düzey bir arayüz sağlayan kütüphane. İşte bir örnek:


import pandas as pd

# Load the Excel spreadsheet into a pandas DataFrame
df = pd.read_excel("file.xlsx", sheet_name="Sheet1")

# Split the contents of the "A1" cell into separate lines
lines = df.at["A1", "A1"].split("\n")

# Write each line to a separate cell in column B
for i, line in enumerate(lines):
    df.at[i, "B"] = line

# Save the updated DataFrame back to the Excel spreadsheet
df.to_excel("file.xlsx", index=False)

Bu örnekte, bir Excel elektronik tablosunun içeriği bir pandaya yüklenir DataFrame kullanılarak read_excel fonksiyonu. “A1" hücresinin içeriği daha sonra ayrı satırlara bölünür. bölünmüş yöntemi. Ayrı satırlar daha sonra B sütunundaki ayrı hücrelere yazılır. de yöntemi. Son olarak, güncellenmiş DataFrame, Excel elektronik tablosuna geri kaydedilir. to_excel fonksiyonu.

Yöntem C:Java

Java kullanarak bir Excel elektronik tablosundaki hücreleri bölebilirsiniz. Bunu yapmak için, Microsoft Office dosyalarını okumak ve yazmak için Java API'leri sağlayan Apache POI gibi bir kitaplık kullanabilirsiniz.

Apache POI kullanarak bir Excel dosyasındaki hücreleri nasıl bölebileceğinize dair bir örnek:


import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import java.io.FileInputStream;
import java.io.FileOutputStream;

public class ExcelSplitter {
    public static void main(String[] args) throws Exception {
        // Load the Excel file
        FileInputStream inputStream = new FileInputStream("file.xlsx");
        XSSFWorkbook workbook = new XSSFWorkbook(inputStream);
        XSSFSheet sheet = workbook.getSheetAt(0);

        // Split the contents of a cell based on a delimiter
        for (Row row : sheet) {
            for (Cell cell : row) {
                if (cell.getCellType() == Cell.CELL_TYPE_STRING) {
                    String[] values = cell.getStringCellValue().split("\n");
                    for (int i = 0; i < values.length; i++) {
                        cell = row.createCell(cell.getColumnIndex() + i);
                        cell.setCellValue(values[i]);
                    }
                }
            }
        }

        // Write the resulting Excel file
        FileOutputStream outputStream = new FileOutputStream("file_split.xlsx");
        workbook.write(outputStream);
        workbook.close();
    }
}

En iyi yol:QuickTran işlevini kullanın

  • Web sitemizi ziyaret edin ve çevrimiçi aracı bulun.
  • “Dosya Seç” düğmesini tıklayıp değiştirmek istediğiniz dosyayı seçerek csv dosyanızı açın.
  • Dosya yüklendikten sonra, işlenmesini istediğiniz belirtilen sütunları seçebilirsiniz ve saniyeler içinde hücreyi (sütunları) satır dönüşüne göre bölersiniz.
  • Daha sonra dosyaları indirebilir ve bilgisayarınıza kaydedebilirsiniz.
Daha fazla Dönüşüm aracımızla tanışın
Verileri dönüştürme: Metin, Tarih/Saat, Konum, Json, vb.