Ten post wyjaśnia, jak naprawić 'DataFormat.error: Nie mogliśmy przekonwertować na numer'. Praca z danymi wZapytanie o zasilanie, czy wPrzewyższaćLubPower bi, może usprawnić analizę i raportowanie. Jednak błędy konwersji typu danych są powszechną frustracją, z jaką, z którymi boryka się wielu użytkowników, szczególnie podczas niezgodnych formatów.
Niezależnie od tego, czy niedopasowane ograniczniki, mieszane typy danych, czy ustawienia regionalne, problemy mogą spowodować błędne interpretację danych, co prowadzi do błędu konwersji:
DataFormat.error: Nie mogliśmy przekonwertować na numer. Szczegóły: [error_details]
W tym poście zbadamy główne przyczyny błędu i zapewniamy praktyczne rozwiązania w celu rozwiązania problemu.
Napraw dataFormat.error: Nie mogliśmy przekonwertować na numer
Do naprawyDataFormat.error, nie mogliśmy przekonwertować na numer, podczas pracy z danymi wZapytanie o zasilanie, czy wPrzewyższaćLubPower biUżyj tych rozwiązań:
- Usuń automatyczny krok „Zmień typ”
- Odfiltruj wartości nie-numeryczne
- Wyczyść i standaryzuj dane przed konwersją typu
- Ręcznie ustawiaj ograniczenia i lokalizację
- Prawidłowe dziesiętne i tysiące separatorów
Zobaczmy to szczegółowo.
1] usuń automatyczny krok „typu zmiany”
Power Query często automatycznie dodaje krok „typu zmiany” po załadowaniu danych, aby spróbować i przypisać typy danych do kolumn na podstawie pierwszych 1000 wierszy. Jeśli Twoje dane zawierają niespójne typy, takie jak liczby zmieszane z tekstem w tej samej kolumnie, ten automatyczny krok może powodować „dataFormat.error: nie mogliśmy przekonwertować na liczbę”.
Aby to naprawić, przejdź doDaneTab (in Excel) i wybierzPobierz dane> Uruchom Power Editor(W Power BI kliknijTransformuj dane).
Po prawej stronie okna edytora zapytań Power, zobaczyszZastosowane krokiszkło. Jeśli jest krok o nazwie 'Zmieniony typ„Power Query automatycznie przypisał typy danych. KliknijXObok kroku, aby go usunąć. To powstrzyma zapytanie o automatyczne konwersje.
Po usunięciu kroku „Zmieniony typ” ręcznie ustaw typ danych każdej kolumny, aby upewnić się, że jest poprawna.
2] Odfiltruj wartości niewiazowe
Kolumny zawierające zarówno wartości tekstowe, jak i liczbowe (np. „ABC 123”) mogą powodować, że zapytanie o zasilanie próbuje przekonwertować wszystko na liczbę, prowadząc do powyższego błędu. Możesz zrobić kilka rzeczy, aby to naprawić:
- Zmień typ danych kolumny na „tekst”, użyjWymień wartościOpcja poprawienia problematycznego wpisu, a następnie przywrócenia typu danych do „liczby dziesiętnej”.
- UżyjPodzielona kolumnafunkcja. Następnie zastosuj typ danych „Numer” do kolumny numerycznej, a typ „tekst” do drugiego.
- Możesz także odfiltrować wiersze o wartościach nie-numerycznych (które nie powinny tam być) przed przekształceniem kolumny na typ danych liczbowych.
Po odfiltrowaniu wartości nie-numerycznych możesz bezpiecznie zmienić typ danych oryginalnej kolumny.
3] Wyczyść i standaryzuj dane przed konwersją typu
Dane skopiowane ze stron internetowych lub innych źródeł mogą obejmować nieokreślone przestrzenie lub symbole, takie jak „&” lub ”, które mylą zapytanie energetyczne podczas próby konwersji lub scalania kolumn.
ZastosujCZYSTYLubPRZYCINAĆfunkcja zPrzekształcaćMenu W celu usunięcia tych znaków (funkcja wykończenia usuwa dodatkowe przestrzenie z tekstu, pozostawiając tylko pojedyncze przestrzenie między słowami, funkcja czystej usuwa wszystkie niepulistyczne znaki i jest szczególnie przydatna do czyszczenia danych importowanych ze źródeł zewnętrznych, w których mogą istnieć ukryte znaki).
Po zastosowaniu tych funkcji spróbuj ponownie ustawić typ danych kolumny.
4] Ręcznie ustaw ograniczenia i lokalizację
Jeśli Twoje dane obejmują ustawienia regionalne, upewnij się, że Power Query używa prawidłowego ograniczenia i lokalizacji. Na przykład, jeśli pracujesz z danymi europejskimi, w których przecinki są używane jako separatory dziesiętne, ręcznie ustaw lokalizację danych, idącPlik> Opcje> Opcje zapytania> Ustawienia regionalnei dostosowanieWidowniaAby dopasować źródło danych.
Jeśli jest to pojedyncza kolumna, użyjZmień typ> za pomocą lokalizacjiOpcja zapewniająca właściwą konwersję typu danych z odpowiednimi zastosowanymi ustawieniami regionalnymi.
Podobnie w przypadku plików CSV sprawdź, czy dane wykorzystują przecinki, czy półkolony jako ograniczniki i ręcznie dostosuj to podczas importu.
5] poprawne dziesiętne i tysiące separatorów
Wreszcie, jeśli zapytanie Power nie przekonwertuje liczb ze względu na niedopasowane punkty dziesiętne i tysiące separatorów, użyj opcji Wymień, aby zamienić niewłaściwy separator (np. Zmiana '.', „Dla danych europejskich), aby dopasować się do oczekiwanego formatu.
To wszystko!
Czytać: .
Jak rozwiązać błąd DataFormat, którego nie mogliśmy przekonwertować na numer?
Upewnij się, że kolumny, z którymi pracujesz, są poprawnie sformatowane jako „tekst” lub „liczba”. Kiedy napotkasz „DataFormat.error: Nie mogliśmy konwersji na numer”, spójrz na sekcję „Szczegóły” komunikatu o błędzie. Często podkreśla to wartość lub konkretny charakter, którego zapytanie Power nie może interpretować jako liczby. Jeśli kolumna zawiera zarówno tekst, jak i liczby, podziel ją na osobne kolumny, a następnie zastosuj poprawny typ danych do kolumny numerycznej.
Dlaczego Excel nie pozwala mi konwertować na liczbę?
Excel może nie pozwolić na konwertowanie liczb przechowywanych jako tekst na liczby, jeśli komórki są sformatowane jako „tekst” lub zawierają niewidoczne znaki, takie jak nie-łaskie przestrzenie lub symbole specjalne. Jeśli którekolwiek z dotkniętych komórek zostanie połączone, Excel może ograniczyć niektóre operacje, takie jak konwersja liczb. Niezmurz komórek przed próbą przekonwertowania.
Przeczytaj następny: .